Linuxの端末でmakeコマンドを実行して、いくつかのC++ライブラリを使用したいと思っています。 "make"を実行中に不都合に、要求されたライブラリが見つからないというエラーが表示されます。C++ Makefileでライブラリが見つからない
ここでは、関連のmakefile:
ここでは、リンクされている必要があり、私のファイルシステム内のファイルです。
なぜライブラリがライブラリを見つけられないのですか? 事前
Linuxの端末でmakeコマンドを実行して、いくつかのC++ライブラリを使用したいと思っています。 "make"を実行中に不都合に、要求されたライブラリが見つからないというエラーが表示されます。C++ Makefileでライブラリが見つからない
ここでは、関連のmakefile:
ここでは、リンクされている必要があり、私のファイルシステム内のファイルです。
なぜライブラリがライブラリを見つけられないのですか? 事前
ですべての答えてくれてありがとう-lgmpのためにあなたのMakefileを修正するようにしてくださいではなく、バックグラウンドで-libgmp
は、コンパイラは、名前だけでなく、拡張子.soと同様のものの上に「LIB」を追加します。
ld -L [yourincludepath] -lgmp --verbose
このような解像度の問題では、32ビットアプリケーションと64ビットのライブラリをリンクしようとしている事実によるかもしれません:?
は、リンカがやろうとしているものの概要を取得するには、以下を実行してみてくださいlibの適切なXXビットをインストールしてみてください。
-mオプション(マシン依存)を追加してください:あなたの側でサポートされる可能性があります
ld -melf_i386 -L /usr/lib/i386-linux-gnu/ -lgmp --verbose
その他の値:
elf_x86_64 elf32_x86_64 elf_i386 elf_iamcu i386linux elf_l1om elf_k1om i386pep i386pe
詳細情報:
すでに-lgmpと-lntlを試しました。うまく行かなかった。他の提案はありますか? – PatyKerry
私の投稿 – Fabien
が役に立ちました。今すぐ言われます:/usr/local/lib/libntl.soを開く試みが失敗しました /usr/local/lib/libntl.aを開こうとしました libntl.soファイルが見つからないようです。私はlibの別のバージョンを試しなければならないと思います。私はhttp://www.shoup.net/ntl/download.htmlを使用しようとしています。 – PatyKerry