Binary do not start and ends in Symbol not found. But library is correctly compiled and installed
Added by Sven Alisch 4 months ago
Hello all,
Happy New Year. I have the problem, that I can not start my application. Since 1 year I did not compile and started the app. I also upgraded all libraries, the compiler. I work under MacOS. The app compiles and links without any error. But if I start the app with:
./waverider --approot=../approot --docroot=../docroot --http-listen 0.0.0.0:9090
The result is:
dyld[89619]: Symbol not found: __ZN2Wt10SignalBaseC2Ev
Referenced from: / /build/waverider
Expected in: unknown
It seems, the problem has to do with WtSignalBase Instance/Class, but why? BTW: This happens with wt versions 4.8 / 4.9 / 4.10.
How to locate the error?
Thanks,
Sven
Replies (1)
RE: Binary do not start and ends in Symbol not found. But library is correctly compiled and installed - Added by Sven Alisch 4 months ago
I have found out, that the libs were not found while executing the binary (assembly). Strange, but while my app compiles, all the libs were found.
If such a strange behavior occurs, I recommend to do following:
- Start your app with: DYLD_PRINT_SEARCHING=1 ./waverider ...
- Look in the messages, if there occurs a line like:
dyld[5439]: find path "@rpath/libwthttp.4.10.3.dylib"
dyld[5439]: not found: "@rpath/libwthttp.4.10.3.dylib"
- If so, check your DYLD_LIBRARY_PATH with:
echo $DYLD_LIBRARY_PATH
- If "/usr/local/lib" is missing, add with:
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:/usr/local/lib
After adding "/usr/local/lib" it works.
regards,
Sven