[gambit-list] Compiling GSI on windows with ___SHARED defined

Ivan Kelly ivan+gambit at bleurgh.com
Fri Aug 7 08:11:32 EDT 2009


Im compiling gambit on windows with ___SHARED defined, in a symbian OS
emulator environment. I've managed to get it working without issue
compiling to one big monolith, taking pointers from the openwatcom
batch file (also compiled with gcce and running on phone).

However, ___SHARED is proving to be a bit more difficult. The dll
compiles with very little issue. ___LIBRARY and ___PRIMAL are defined
for all *.c inputs to that, and it compiles without error apart from
the unused variables, whose warnings i've hidden.

gsi is proving trickier though. In getting a load of errors for
___gstate being defined in many places. Also, ___G__20__gsilib is
twice defined.

<snip>
mwldsym2.exe: Multiply defined symbol: struct ___global_state_struct
___gstate (?___gstate@@3U___global_state_struct@@A) in
mwldsym2.exe: files _gambcgsi.o, _gsilib.o
mwldsym2.exe: Multiply defined symbol: struct ___glo_struct
___G__20___gsilib (?___G__20___gsilib@@3U___glo_struct@@A) in
mwldsym2.exe: files _gambcgsi.o, _gsilib.o
mwldsym2.exe: Multiply defined symbol: struct ___global_state_struct
___gstate (?___gstate@@3U___global_state_struct@@A) in
mwldsym2.exe: files _gsi.o, _gsilib.o
mwldsym2.exe: Multiply defined symbol: struct ___global_state_struct
___gstate (?___gstate@@3U___global_state_struct@@A) in
mwldsym2.exe: files _gsi_.o, _gsilib.o
</snip>

_gsilib.c and _gambcgsi.c both have ___LIBRARY defined.
_gsi.c and _gsi_.c do not.

So my questions are:
 is this a known problem with windows?
 Im I trying to use the correct files to build gsi?

Compiler is metroworks code warrior, but I don't think it's fully a
comiler specific issue.

Regards
Ivan




More information about the Gambit-list mailing list