我試圖讓libpng在linux上工作。我無法通過netbeans使它工作,所以我直接運行g ++,編譯爲g++ -lpng -lz main.cpp -o test
。當我嘗試運行它時,它輸出./test: error while loading shared libraries: libpng14.so.14: cannot open shared object file: No such file or directory
。我想這意味着我動態鏈接和無法找到.so文件鏈接libpng與g ++
~/Programs/NetBeansProjects/DiamondSquare$ ldd test linux-gate.so.1 => (0x008a5000) libpng14.so.14 => not found libz.so.1 => /usr/local/lib/libz.so.1 (0x00209000) libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x0094b000) libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00e3a000) libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00927000) libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00220000) /lib/ld-linux.so.2 (0x00b85000)
我真的不希望在第一時間動態鏈接。我怎麼解決這個問題?
我知道libpng14.so.14也在/ usr/local/lib中,如果這很重要的話。
如果您能告訴我如何在netbeans中執行此操作,請多加註意。
'g ++ -I/usr/local/include/libpng14 -L/usr/local/lib -lpng -lz main.cpp -o test'現在似乎已經成功了。生病看看你說什麼。 – Kyle 2010-09-28 19:24:09