いくつかのライブラリを私の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