1

私はしばらく CDT でプログラミングを行ってきましたが、問題なく動作しました。一般に、すべてがそれで機能します。たとえば、次のように入力してopencvをインポートできます

using namespace cv;

ただし、現在、機能しないインポートが 2 つあります。

#include <vector>
using namespace std;

これらの両方に下線が引かれ、std はコンパイル エラー (その他は単なる警告) を引き起こします。セットアップしたとき、このガイドは、次のインクルードがこれらのエラーを取り除くことを教えてくれました:

# for NDK r8b and later:
${NDKROOT}/platforms/android-9/arch-arm/usr/include
${NDKROOT}/sources/cxx-stl/gnu-libstdc++/4.6/include
${NDKROOT}/sources/cxx-stl/gnu-libstdc++/4.6/libs/armeabi-v7a/include
${ProjDirPath}/../../sdk/native/jni/include

ただし、それはopencvのものにのみ役立ちました。私はNDK v r8dを使用しています(私の知る限り最新のものです)。これらのインクルード以外に、コンパイルしてビルドすることができます。正しい方向へのポインタをいただければ幸いです。

4

1 に答える 1

2

これが OpenCV ドキュメントのどこにもない理由はわかりませんが、コンパイルする方法は次のとおりです。

上記のインクルードに加えて、さらに 2 つインクルードする必要があります (まだインクルードしていない場合)。C++ ファイルの場所を見つける必要があります。Mac では、/usr/include にあります。したがって、 [Project Properties] -> [C/C++ General] -> [Paths and Symbols] -> [Includes] タブの下に次の 2 つのインポートを追加します。

/usr/include/c++/<your version of c++>
/usr/include

私の場合、上記は次のようになりました。

/usr/include/c++/4.2.1
/usr/include
于 2013-02-06T19:28:59.207 に答える