0

私はopencvの関数を使って非常に単純なテストプログラムをクロスコンパイルしようとしています。

Ubuntu 11.10とCodeblocksを使用していますが、コードをコンパイルすると、次のように表示されます。

||warning: ../../lib/libopencv_core.so, needed by /root/arm-lib/lib/libopencv_highgui.so, not found (try using -rpath or -rpath-link)|
||warning: ../../lib/libopencv_imgproc.so, needed by /root/arm-lib/lib/libopencv_highgui.so, not found (try using -rpath or -rpath-link)|
||=== Build finished: 0 errors, 2 warnings ===|

また、このソフトウェアをARMで実行しようとすると、セグメンテーション違反(コアダンプ)が発生します。

コードブロックで使用しているフラグは次のとおりです。

-L / usr / local / lib -L ​​/ lib / libbxml2.so.2 -lpthread -lrt -lxml2 -lz -lopencv_highgui -lopencv_core -lopencv_imgproc

何を指示してるんですか?前もって感謝します

4

1 に答える 1

0

コマンドラインの明らかな問題の1つ-Lは、ライブラリディレクトリを追加するためにのみ使用する必要がありますが、ファイルをに含めるために使用しているため、これは-L/lib/libbxml2.so.2間違いです。

おそらくあなたがやりたかったこと:

-L/usr/local/lib -L/lib -lxml2 -lpthread -lrt -lxml2 -lz -lopencv_highgui -lopencv_core -lopencv_imgproc

これで、エラーは明らかです。システムは、に含めたパスでlibopencv_core.soとlibopencv_imgproc.soを見つけることができません-L。これらのファイルを見つけて、-Lフラグを使用して適切なディレクトリを追加することをお勧めします。

于 2012-04-12T14:29:09.320 に答える