我的CMakeLists.txt:
cmake_minimum_required( VERSION 2.8 )
set (CMAKE_VERBOSE_MAKEFILE ON)
project( a.out )
find_package(OpenGL)
find_package(PkgConfig REQUIRED)
pkg_search_module(GLFW REQUIRED glfw3)
pkg_search_module(CEGUI-GL REQUIRED CEGUI-0-OPENGL)
pkg_search_module(CEGUI REQUIRED CEGUI-0)
macro( config_project PROJNAME LIBNAME )
include_directories( ${${LIBNAME}_INCLUDE_DIR} )
target_link_libraries( ${PROJNAME} ${${LIBNAME}_LIBRARIES} )
endmacro()
add_definitions(-std=c++11)
add_executable(a.out src/ConsoleWindow.cc src/camera.cc src/main.cc)
config_project(a.out OPENGL)
config_project(a.out GLFW)
config_project(a.out CEGUI-GL)
config_project(a.out CEGUI)所以,有PkgConfig代表CEGUI-0-OPENGL和CEGUI-0。在CEGUI-0.pc中有:
prefix=/usr
exec_prefix=${prefix}
libdir=${prefix}/lib
includedir=${prefix}/include/cegui-0
moduledir=${prefix}/lib/cegui-0.8
datafiles=${prefix}/share/cegui-0
Name: CEGUI-0
Description: The free GUI library for games and multi-media development.
Version: 0.8.2
Libs: -L${libdir} -lCEGUIBase-0
Cflags: -I${includedir} -I${includedir}/cegui当我运行cmake .时,一切都很好,但是在我的.cc中有:
#include <CEGUI/CEGUI.h>当我把文件压缩时,我发现了一个错误,好像没有找到这样的文件.但是locate返回:
/usr/include/cegui-0/CEGUI/CEGUI.h我做错什么了?
发布于 2014-03-19 06:10:20
几个月后..。
我想我解决了这个问题,我改变了路线
include_directories( ${${LIBNAME}_INCLUDE_DIR} )通过
include_directories( ${${LIBNAME}_INCLUDEDIR} )注意到includedir是如何输入CEGUI-0.pc的.
includedir=${prefix}/include/cegui-0我不再得到#include <CEGUI/CEGUI.h>的“无文件发现错误”了。在我的程序中,我将尝试用CEGUI来做一个地狱般的世界。如果你有任何评论,请做。
发布于 2014-01-15 16:08:31
我也有同样的问题,没有找到一个干净的解决办法。我就这样解决了:
include_directories(${CEGUI_INCLUDE_DIR}/../)这可能不是最好的解决办法,但对我来说足够了.
https://stackoverflow.com/questions/20363784
复制相似问题