0

私はOpenNIサンプルをビルドするために自分のCMakeLists.txtファイルを狂わせました。NiSimpleViewerを正常にビルドしました。しかし、NiUserTrackerを試してみると、次のエラーが発生します。

35 warnings generated.
Linking CXX executable main
ld: warning: path '/usr/lib/libOpenNI.dylib' following -L not a directory
Undefined symbols for architecture x86_64:
  "DrawDepthMap(xn::DepthMetaData const&, xn::SceneMetaData const&)", referenced from:
      glutDisplay() in main.cpp.o
  "MyPoseInProgress(xn::PoseDetectionCapability&, char const*, unsigned int, XnPoseDetectionStatus, void*)", referenced from:
      _main in main.cpp.o
  "MyCalibrationInProgress(xn::SkeletonCapability&, unsigned int, XnCalibrationStatus, void*)", referenced from:
      _main in main.cpp.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [main] Error 1
make[1]: *** [CMakeFiles/main.dir/all] Error 2
make: *** [all] Error 2

これは私が使用するCMakeListsです。何が悪いのか教えてください。

http://pastebin.com/SMYjjU35

build/外のフォルダの内容は

CMakeLists.txt  Libs            build           opengles.cpp
GL              SceneDrawer.cpp glh             opengles.h
GLES            SceneDrawer.h   main.cpp
4

1 に答える 1

0

私は、それはこの行のためだと思います:

link_directories(${OPENNI_LIBRARY})

このlink_directories()コマンドは、ライブラリを検索する必要があるパスを設定するため、そのようなものが必要です${OPENNI_LIBRARY_DIRS}

于 2012-10-07T13:25:59.840 に答える