Newbie questions about Pliant
compiling vncchallenge.dll (-mrtd)
trouble compiling vncchallenge.dll with -mrtd flag |
Message posted by maybe Boris Reitman on 2008/03/21 18:27:20 |
If I remove the -mrtd flag it compiles but pliant can't load the DLL.
Here is the build script. I run this from inside cygwin bash window:
-- 8< -- set -x gcc -O2 -m486 -mregparm=3 -mrtd -D_REGISTERS_ -U__stdcall -D_NOCHECK_ -fomit-frame-pointer -D_LISTING_ -Dc_debugging_level=0 -D_i386_ -D_WIN32_API_ -D_WIN32_ -D_GCC_ -D_DLL_ -nostdlib -c -o /tmp/vncchallenge.o vncauth.c d3des.c echo EXPORTS>/tmp/vnc.def echo vncEncryptBytes>>/tmp/vnc.def dlltool --def /tmp/vnc.def --output-exp /tmp/vnc.exp --dllname vncchallenge.dll ld --dll --enable-stdcall-fixup -s -o vncchallenge.dll /tmp/vnc.exp /tmp/vncchallenge.o #/usr/lib/libkernel32.a
--->8---
The error with -mrtd flag enabled:
---8<-----
+ gcc -O2 -m486 -mregparm=3 -mrtd -D_REGISTERS_ -U__stdcall -D_NOCHECK_ -fomit-frame-pointer -D_LISTING_ -Dc_debugging_level=0 -D_i386_ -D_WIN32_API_ -D_WIN32_ -D_GCC_ -D_DLL_ -nostdlib -c -o /tmp/vncchallenge.o vncauth.c d3des.c In file included from /usr/include/sys/stat.h:9, from vncauth.c:29: /usr/include/time.h:150: error: conflicting types for 'clock_getres' /usr/include/cygwin/time.h:20: error: previous declaration of 'clock_getres' was here /usr/include/time.h:150: error: conflicting types for 'clock_getres' /usr/include/cygwin/time.h:20: error: previous declaration of 'clock_getres' was here /usr/include/time.h:171: error: conflicting types for 'nanosleep' /usr/include/cygwin/time.h:18: error: previous declaration of 'nanosleep' was here /usr/include/time.h:171: error: conflicting types for 'nanosleep' /usr/include/cygwin/time.h:18: error: previous declaration of 'nanosleep' was here + echo EXPORTS + echo vncEncryptBytes + dlltool --def /tmp/vnc.def --output-exp /tmp/vnc.exp --dllname vncchallenge.dll + ld --dll --enable-stdcall-fixup -s -o vncchallenge.dll /tmp/vnc.exp /tmp/vncchallenge.o ----->8----
Also, where do I get /usr/lib/libkernel32.a (which cygwin package?) and do I need it ?
Thanks, Boris |
Message posted by maybe Boris Reitman on 2008/03/21 20:34:54 |
Note: I found libkernel32.a in my cygwin installation in /usr/lib/w32api/libkernel32.a |