0

CMake を実行すると、次の問題が発生します。

CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
DIRECTFB_INCLUDE_DIR (ADVANCED)
  used as include directory in directory /u/menie482/workspace/AtariTEXPLORE
  used as include directory in directory /u/menie482/workspace/AtariTEXPLORE/rl_common
  used as include directory in directory /u/menie482/workspace/AtariTEXPLORE/rl_agent
  used as include directory in directory /u/menie482/workspace/AtariTEXPLORE/rl_env
DIRECTFB_LIBRARY (ADVANCED)
  linked by target "experiment" in directory /u/menie482/workspace/AtariTEXPLORE

実際、実行時にDirectFBが既にインストールされていることを確認しました

locate libdirectfb

では、CMake に DIRectFB の場所を知らせるにはどうすればよいでしょうか。不便な制約は、このマシンで sudo を実行できないことです..

ありがとう!

4

1 に答える 1

0

CMakeLists.txt ファイルで find_package(directfb) のようなものを使用しようとしていると思います。/usr/share/cmake/Modules/directfb.cmake(Ubuntu 12.04)がある場合にのみ実行できます。

私の 2 番目の推測は、CMakeLists.txt ファイルで pkg_module(directfb) のようなものを使用していることです。これは、directfb.pc がどこかにある場合にのみ実行できます。

それ以外
の場合、変数 DIRECTFB_INCLUDE_DIR および DIRECTFB_LIBRARY をどこに設定していますか。

別の手順として、 を使用してみてくださいfind_library()。libdirectfb.so の正確なパスを指定して、次のようにする必要があります。

find_library(DIRECT_FB NAMES directfb PATHS path/directfb.so)
target_link_libraries( MyLibraryOrMyExecutable ${DIRECT_FB} )

于 2013-09-06T07:05:13.857 に答える