2017-06-21 17 views
0

Linuxの端末でmakeコマンドを実行して、いくつかのC++ライブラリを使用したいと思っています。 "make"を実行中に不都合に、要求されたライブラリが見つからないというエラーが表示されます。C++ Makefileでライブラリが見つからない

ここでは、関連のmakefile: enter image description here

ここでは、リンクされている必要があり、私のファイルシステム内のファイルです。 enter image description here

なぜライブラリがライブラリを見つけられないのですか? 事前

答えて

0

ですべての答えてくれてありがとう-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

詳細情報:

usr/bin/ld: cannot find -l<nameOfTheLibrary>

+0

すでに-lgmpと-lntlを試しました。うまく行かなかった。他の提案はありますか? – PatyKerry

+0

私の投稿 – Fabien

+0

が役に立ちました。今すぐ言われます:/usr/local/lib/libntl.soを開く試みが失敗しました /usr/local/lib/libntl.aを開こうとしました libntl.soファイルが見つからないようです。私はlibの別のバージョンを試しなければならないと思います。私はhttp://www.shoup.net/ntl/download.htmlを使用しようとしています。 – PatyKerry

関連する問題