When I downloaded Open C++ and tried to build it on Cygwin, configure ran
ok, but make resulted in the output below. libcmain.o has an unresolved
reference to _WinMain@16.
Environment: Open C++ Version 2.7, Cygwin version 1.5.5-1, Windows XP
Professional.
I tried hacking libcygwin.a, adding libscrnsave.a, which defines the symbol,
but this, not surprisingly, resulted in even more unresolved references.
Has anyone seen this error?
Dominic Herity
Red Plain Technology (www.redplain.com)
T:+353-87-2208233 F: +353-42-9351412 E: dom...@re...
bash-2.05b$ make
make all-recursive
make[1]: Entering directory `/c/opencxx/opencxx-2.7'
Making all in gc
make[2]: Entering directory `/c/opencxx/opencxx-2.7/gc'
Making all in doc
make[3]: Entering directory `/c/opencxx/opencxx-2.7/gc/doc'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/c/opencxx/opencxx-2.7/gc/doc'
Making all in include
make[3]: Entering directory `/c/opencxx/opencxx-2.7/gc/include'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/c/opencxx/opencxx-2.7/gc/include'
make[3]: Entering directory `/c/opencxx/opencxx-2.7/gc'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/c/opencxx/opencxx-2.7/gc'
make[2]: Leaving directory `/c/opencxx/opencxx-2.7/gc'
Making all in libltdl
make[2]: Entering directory `/c/opencxx/opencxx-2.7/libltdl'
make all-am
make[3]: Entering directory `/c/opencxx/opencxx-2.7/libltdl'
/bin/bash ./libtool --mode=link gcc -g -O2 -o libltdl.la -rpath
/usr/local/li
b -no-undefined -version-info 4:0:1 ltdl.lo
rm -fr .libs/libltdl.la .libs/libltdl.* .libs/libltdl.*
generating symbol list for `libltdl.la'
dlltool --export-all --exclude-symbols
DllMain@12,_cygwin_dll_entry@12,_cygwin_
noncygwin_dll_entry@12,DllMainCRTStartup@12,DllEntryPoint@12 --output-def
.libs/
cygltdl-3.dll-def ltdl.lo
sed -e "1,/EXPORTS/d" -e "s/ @ [0-9]*//" -e "s/ *;.*$//" <
.libs/cygltdl-3.dll-
def > .libs/libltdl.exp
if test "x`head -1 .libs/libltdl.exp`" = xEXPORTS; then cp .libs/libltdl.exp
.li
bs/cygltdl-3.dll-def; else echo EXPORTS > .libs/cygltdl-3.dll-def;
_lt_hint=1; c
at .libs/libltdl.exp | while read symbol; do set dummy $symbol; case $# in
2) ec
ho " $2 @ $_lt_hint ; " >> .libs/cygltdl-3.dll-def;; *) echo " $2 @
$_lt_hint $3
; " >> .libs/cygltdl-3.dll-def;; esac; _lt_hint=`expr 1 + $_lt_hint`; done;
fi
gcc -Wl,--base-file,.libs/cygltdl-3.dll-base -Wl,-e,__cygwin_dll_entry@12
-o .l
ibs/cygltdl-3.dll ltdl.lo
/usr/lib/gcc-lib/i686-pc-cygwin/3.3.1/../../../libcygwin.a(libcmain.o)(.text
+0x7
c): undefined reference to `_WinMain@16'
collect2: ld returned 1 exit status
make[3]: *** [libltdl.la] Error 1
make[3]: Leaving directory `/c/opencxx/opencxx-2.7/libltdl'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/c/opencxx/opencxx-2.7/libltdl'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/c/opencxx/opencxx-2.7'
make: *** [all] Error 2
bash-2.05b$
|