OpenNI クラスを呼び出す、以下に示す非常に基本的なプログラム (test.cpp) を実行してコンパイルしようとしています。ここにあるファイルとディレクトリを確認できます。申し訳ありませんが、一部の文字はブラウザのエンコーディングで少し台無しになります。私は Linux コマンドの tree を使用しています。より良いコマンドがあれば教えてください。更新します。
ここのガイドに従っています。「GCC / GNU Make」を参照してください。
#include < stdio.h >
#include < OpenNI.h >
using namespace openni;
int
main ( void )
{
Status rc = OpenNI::initialize();
if (rc != STATUS_OK)
{
printf("\nInitialize failed\n%s\n", OpenNI::getExtendedError());
return 1;
}
printf("Hello, world!\n");
return 0;
}
これをコンパイルするためにコマンドラインで実行しているものを次に示します(gcc 4.7.2):
gcc test.cpp -I../OpenNI-2.0.0/Include -L/home/evan/Code/OpenNi/Init -l OpenNI2 -o test
これは問題なく動作しますが、./test を実行すると次のエラーが発生します。
Initialize failed
DeviceDriver: library handle is invalid for file libOniFile.so
Couldn't understand file 'libOniFile.so' as a device driver
DeviceDriver: library handle is invalid for file libPS1080.so
Couldn't understand file 'libPS1080.so' as a device driver
Found no valid drivers in './OpenNI2/Drivers'
ありがとう、どんな助けでも大歓迎です。