9

OpenNI 2 SDK ( www.openni.org ) をダウンロードしたばかりで、Visual Studio 2012 でプロジェクトをセットアップしようとしています。

  1. 新しい C++ Win32 コンソール アプリケーション プロジェクトを作成する
  2. [プロジェクト] > [MyProject プロパティ]に移動し、[構成プロパティ] > [VC++ ディレクトリ]で...
  3. C:\Program Files (x86)\OpenNI2\Redist\; を追加しました。実行可能ディレクトリ
  4. C:\Program Files (x86)\OpenNI2\Include\; を追加しました。ディレクトリを含める
  5. C:\Program Files (x86)\OpenNI2\Redist\; を追加しました。参照ディレクトリ
  6. C:\Program Files (x86)\OpenNI2\Lib\; を追加しました。ライブラリ ディレクトリ

しかし、ビルドしようとすると、次の未解決のシンボル エラーが発生します (ConsoleApplication1 はプロジェクトの名前です)。

Error   1   error LNK2019: unresolved external symbol
__imp__oniInitialize referenced in function
"public: static enum openni::Status __cdecl openni::OpenNI::initialize(void)"
(?initialize@OpenNI@openni@@SA?AW4Status@2@XZ)
c:\Users\MyPC\documents\visual studio 2012\Projects\ConsoleApplication1\ConsoleApplication1\ConsoleApplication1.obj
ConsoleApplication1

このリンクエラーは、リンカーがいくつかのライブラリを見つけられないことを示していることは知っていますが、今行ったことで十分だと思いました。

64 ビット プロジェクトを作成して 64 ビット バージョンも試しましたが、同じエラーが発生します。

このトピックに関する満足のいくドキュメントは見つかりませんでした。

私は何かばかげたことを見逃していると確信しています。これについてアドバイスをお願いできますか?

4

3 に答える 3

7

また、以下の手順を実行する必要があります。

0 - C/C++ セクションの [General] ノードの下で、

"Additional Include Directories" 

そして追加

"$(OPENNI2_INCLUDE)" (if you use the 32-bit version) or 
"$(OPENNI2_INCLUDE64)" (if you use the 64-bit version). 

これらは、OpenNI インクルード ディレクトリの場所を指す環境変数です。(デフォルトは次のとおりです。

C:\Program Files\OpenNI2\Include or 
C:\Program Files (x86)\OpenNI2\Include)

1-[リンカー] セクションの [一般] ノードの下で、

"Additional Library Directories" 

そして追加

"$(OPENNI2_LIB)" (if you use the 32-bit version) or 
"$(OPENNI2_LIB64)" (if you use the 64-bit version). 

これらは、OpenNI Lib ディレクトリの場所を指す環境変数です。(デフォルトは次のとおりです。

C:\Program Files\OpenNI2\Lib or 
C:\Program Files (x86)\OpenNI2\Lib)

2-Linker セクションの入力ノードの下で、

"Additional Dependencies" 

そして追加

OpenNI2.lib or OpenNI2.lib

3-リリース構成とデバッグ構成の両方に追加のインクルード ディレクトリとライブラリ ディレクトリを追加していることを確認します。

4-OpenNI の redist ディレクトリ (環境変数 "$(OPENNI2_REDIST)" または "$(OPENNI2_REDIST64)" を参照) からすべてのファイルを作業ディレクトリにコピーします。(デフォルトは

C:\Program Files\OpenNI2\Redist or 
C:\Program Files (x86)\OpenNI2\Redist). 

コマンド ラインから実行する場合、作業ディレクトリは実行可能ファイルがあるディレクトリであり、Visual Studio から実行する場合、既定のディレクトリはプロジェクト ファイル (.vcproj、.vcxproj) がある場所であることに注意してください。

于 2013-02-25T23:22:24.060 に答える
1

また、実際のライブラリ ファイルを指定する必要があります。openni2.lib

于 2013-02-08T23:07:51.447 に答える