PDA

View Full Version : Compiler problems


Shadow-Wolf
01-07-2004, 09:55 AM
before i was going to add changes to the source for my server i wanted to try and compile it. when i tryed to compile EMuShareMeM i get this error when it compiles mmf.h

3 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.h
In file included from MMF.h
1 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
from MMF.cpp
18 C:\EQEmu-0.5.2-Source\common\types.h:40
#error __int64 not supported
MMF.cpp C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
In member function `bool MMF::Open(const char*, unsigned int)':
77 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
`__try' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function
77 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
parse error before `{' token
MMF.cpp C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
At global scope:
126 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
syntax error before `{' token
130 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
ISO C++ forbids declaration of `Close' with no type
131 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
parse error before `return'
134 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
`hMutex' was not declared in this scope
134 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
ISO C++ forbids declaration of `CloseHandle' with no type
134 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
`int CloseHandle' redeclared as different kind of symbol
988 C:\Dev-Cpp\include\winbase.h
previous declaration of `BOOL
136 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
parse error before `return'
MMF.cpp C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
In member function `void MMF::Close()':
308 C:\EQEmu-0.5.2-Source\EMuShareMem\MMF.cpp
`CloseHandle' cannot be used as a function
C:\EQEmu-0.5.2-Source\EMuShareMem\Makefile.win
[Build Error] [MMF.o] Error 1


I am using Dev-C++ might that be a problem?

Shadow-Wolf
01-07-2004, 10:01 AM
oh didn't see that no other compilers work with it sorry =/ kinda angers me that i cant compile it in that but oh well =/

Lurker_005
01-07-2004, 06:06 PM
If you know Dev-CPP perhaps you can get it to work. The problem is no one was motivated enought to try and track/fix the problems with compiling with it.

All the Dev's have MSVC++ or linux GCC

Shadow-Wolf
01-08-2004, 12:36 AM
still new to the program and im very new to C++ so i wouldn't be able to tell what was wrong if it slapped me in the face.

Lurker_005
01-08-2004, 03:11 PM
I understand part of the problem...
Under windows all the #ifdef's are setup for VC++ and windows.
But for Dev-CPP it needs to be mingw and windows. Or basically a mix of the windows and linux compile options.

Like #error __int64 not supported that is causing the first 8 or so lines... it is a programed error inside a #ifdef win32 because of 2 missing defines that are probably set by VC++ But like you I have NO idea if the gcc code or the win32 code is needed (or if both fail) I would imagine the gcc code is needed though.

I also found it matters which version of mingw you use. The latest dev-CPP 4.9.8.5 uses mingw 3.2 but you can install the latest mingw 3.3.1 and it will cause different errors...

I think it would be really good if someone with Dev-CPP and or mingw experience would take a look at it and submit the changes required to compile correctly under mingw.