Well, zone compiled alot easier than I thought.. ios::nocreate was removed , so I removed the #ifdef win32 switch and used the windows version of the call, and it seems to be working great.. Not sure why windows used a different function for it, so this might not be the best idea until i can figure out why, but if you'd like to test it on gcc3.2, heres what i did..
In net.cpp
//#ifdef WIN32
ifstream in;in.open(SPELLS_FILE);
//#else
// ifstream in;in.open
//(SPELLS_FILE,ios::nocreate,filebuf::openprot);
//#endif
if(!in.is_open()){
cout << SPELLS_FILE << " not found, spells NOT loaded.";
return;}
I put the changed cpp file at
http://denial.dyndns.org/eqemu/3.13
My server is compiled fine now with gcc3.2. even though there are a ton of warnings (I fixed a bunch in the .cpp files), and i definitely notice a difference with the new compiler optimizations...