g++ コンパイル時のライブラリリンク

g++ コンパイル時のライブラリリンク

いくつかのライブラリを私のg ++​​コードに関連付けようとしていますが、次のエラーが発生します。

$ g++ -O myprob.o  -o myprob -Wl,-rpath $PATH/lib -L$PATH/lib -lprob7_cpp -lprob7
g++.exe: error: c:\mypath;c:\mypath\lib: Invalid argument

その部分なしでこのコマンドを実行しようとすると-Wl,-rpath $PATH/lib(できそうです)、次のエラーが発生します。

$ g++ -O myprob.o  -o myprob -L$PATH/lib -lprob7_cpp -lprob7
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot find -lprob7_cpp
c:/mingw/bin/../lib/gcc/mingw32/4.8.1/../../../../mingw32/bin/ld.exe: cannot find -lprob
collect2.exe: error: ld returned 1 exit status

私はこの問題を何時間も悩んでいましたが、とても理解できないようです。

.cpp次のコマンドを使用してファイルを正常にコンパイルしました。

$ g++ -O -I$PATH/include -c myProb.cpp -o myProb.o

これらのエラーをどのように修正できますか?

ベストアンサー1

$PATHコンパイルラインオプションに変数を使用しないでください。

次のコマンドラインを試してください。

$ g++ -O myprob.o  -o myprob -Wl,-rpath ./lib -L./lib -lprob7_cpp -lprob7

おすすめ記事