我正在嘗試使用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在編譯時創建了一個頭文件,並將其複製到構建目錄中,而不是添加到項目中。 –