1
我想編譯一個程序,使用第三方庫,Omnet ++在我的情況。顯然,「製造」沒有找到一個圖書館,但它使用的路徑是正確的,因爲你可以看到(在這個意義上,我可以看到OMNET ++源樹下庫)使庫找不到
pv135168:basic Bob$ opp_makemake
Creating Makefile in /Users/Bob/Code/network_sim/basic... Makefile created, running "make depend" to add dependencies... opp_makedep -Y --objdirtree -I. -f Makefile -P\$O/ -- ./*.cc
pv135168:basic Bob$ make
g++ -c -g -Wall
-fno-stack-protector -m32 -DHAVE_PCAP -DXMLPARSER=libxml
-DWITH_PARSIM -DWITH_NETBUILDER -I.
-I/Users/Bob/Code/omnetpp-4.1/include -o out/gcc-debug//txc1.o txc1.cc g++ -m32 -Wl,-rpath,/Users/Bob/Code/omnetpp-4.1/lib -Wl,-rpath,. -o out/gcc-debug//basic out/gcc-debug//txc1.o -Wl,-all_load
-L"/Users/Bob/Code/omnetpp-4.1/lib/gcc"
-L"/Users/Bob/Code/omnetpp-4.1/lib" -u _tkenv_lib -lopptkenvd
-loppenvird -lopplayoutd -u _cmdenv_lib -loppcmdenvd -loppenvird
-loppsimd -lstdc++
ld: library not found for -lopptkenvd
collect2: ld returned 1 exit status make: *** [out/gcc-debug//basic]
Error 1 pv135168:basic Bob$
nope,我只看到.dylib文件... – Bob
對不起... Windows開發的大腦。是的,dylib(固定)。你可以仔細檢查'ls/Users/Bob/Code/omnetpp-4.1/lib/libopptkenvd.dylib'並確保它真的返回一些東西(並且它不是空的)?鏈接器告訴你它不在那裏。 –
我看到,庫的真實名稱是libopptkenv.dylib而不是libopptkenvd.dylib。奇怪的是,它必須是在makefile中以某種方式生成的錯字。 – Bob