我正在尝试使用CMake编译我的应用程序,并且出于各种原因需要编译Lua。我目前的设置如下:将生成的子项目配置文件添加到CMake中的主项目中
project/ CMakeLists.txt ... libs/ CMakeLists.txt ... lua/ CMakeLists.txt ...
我使用LuaDist,因为它已经提供了CMake的构建系统LUA。当我尝试从我的项目中包含lua.h
时会出现问题,因为它需要luaconfig.h
,它由Lua子项目生成并输出到它的二进制目录,而不是源目录。
在我的主要项目中,我做这样的事情:
include_directories(libs/lua/src/ etc...)
我怎么能还包括在我的主要项目从子项目中生成的文件?
如果您需要在外部项目上运行'configure'和'make',请检出cmake的ExternalProject。 – Hayt
我并不需要在任何导入的库上运行,也不需要“配置”或“制作”,因为它们都随CMake构建配置一起提供。问题是Lua在编译时创建了一个头文件,并将其复制到构建目录中,而不是添加到项目中。 –