Rob Shearman wrote: > 2008/11/6 Michael Ost <[EMAIL PROTECTED]>: >> Hi all, >> >> When I upgraded wine-develfrom 1.0 to 1.1.7, my winelib app that uses >> __TRY no longer links. It complains that RtlUnwind cannot be found. I >> can see that RtlUnwind was added to wine/exception.h, but I am not sure >> how to fix it. >> >> I tried adding -lntdll and -lwine to the link command line but it didn't >> help. Any suggestions? > > Yes, you need to link to ntdll. Linking to libwine shouldn't be > necessary. Please post the command line you are using and errors you > are getting even when you link to ntdll.
I tried linking to ntdll and kernel32, but same result. Unless I am linking in the wrong way? Command line and result are below. BTW - I thought that wineg++ linked in ntdll and kernel32 automatically...? Thanks! ... mo PS: Command line that builds test.o and links the app that fails: wineg++ -UNDEBUG -g -O0 -Wall -Werror -I/home/most/Desktop/cvs/sandbox/mo/vst-player/make/../source -I/home/most/Desktop/cvs/sandbox/mo/vst-player/make/../../../..//muse/libraries/medioid -I/home/most/Desktop/cvs/sandbox/mo/vst-player/make/../../../..//muse/libraries/muselock -c -MMD -MP -o test.o /home/most/Desktop/cvs/sandbox/mo/vst-player/make/../source/win32/test.cpp wineg++ -UNDEBUG -g -O0 -Wall -Werror -I/home/most/Desktop/cvs/sandbox/mo/vst-player/make/../source -I/home/most/Desktop/cvs/sandbox/mo/vst-player/make/../../../..//muse/libraries/medioid -I/home/most/Desktop/cvs/sandbox/mo/vst-player/make/../../../..//muse/libraries/muselock -o vst-player.exe.so VstPlayerApp.o test.o PaceablePlugin.o PlayerMixer.o /home/most/Desktop/cvs/sandbox/mo/vst-player/make/../../../..//muse/libraries/medioid/wine-debug/libmedioid.a -lboost_filesystem -ldl -lrt -lasound -lpthread /home/most/Desktop/cvs/sandbox/mo/vst-player/make/../../../..//muse/libraries/muselock/wine-debug/libmuselock.a /home/most/Desktop/cvs/sandbox/mo/vst-player/make/../../../..//muse/libraries/muselock/source/win32/PlugInLib.a -lusb -lcomdlg32 -lgdi32 -lcomdlg32 -lntdll -lkernel32 test.o: In function `__wine_rtl_unwind': /usr/include/wine/exception.h:250: undefined reference to `RtlUnwind(void*, void*, _EXCEPTION_RECORD*, void*)' PlayerMixer.o: In function `__wine_rtl_unwind': /usr/include/wine/exception.h:250: undefined reference to `RtlUnwind(void*, void*, _EXCEPTION_RECORD*, void*)' collect2: ld returned 1 exit status winegcc: g++ failed PPS: test.cpp source that uses __TRY: #include <windows.h> // WinMain #include <wine/exception.h> // __TRY void test_function(); LONG WINAPI process_exception_handler(EXCEPTION_POINTERS* exceptions) { return(EXCEPTION_EXECUTE_HANDLER); } void test_function() { __TRY { } __EXCEPT(process_exception_handler) { } __ENDTRY }