我是CMake的新手,並且遇到了CMake創建的文件如何組織的問題。CMake創建一個奇怪的目錄結構
首先我會詳細介紹一下文件樹。我正嘗試用兩個源目錄(網格和示例)和一個構建目錄構建一個簡單的庫。所以,我有三個CmakeLists.txt文件。因此,頂層目錄如下所示:CMakeLists.txt,/ Grid,/ examples和/ build。
此的CMakeLists.txt包含:
project(talyfem)
cmake_minimum_required(VERSION 2.8.4)
set(CMAKE_CXX_FLAGS "-g")
add_subdirectory(examples Grid)
在網格文件夾的CMakeLists.txt是:
add_library(${PROJECT_NAME} FEMElm.cpp Grid.cpp GridField.cpp SuperGrid.cpp SuperGrid3D.cpp)
中的示例文件夾中的CMakeLists.txt是:
set(EXAMPLES example1)
foreach(example ${EXAMPLES})
add_executable(${example} ${example}.cpp)
target_link_libraries(${example} ${PROJECT_NAME})
endforeach(example)
我從build目錄運行CMake:Cmake ../ 當我這樣做時,它會創建一個st範圍文件結構,我無法弄清楚,似乎不正確。首先,它創建一個../build/CMakeFiles文件夾,這是我所期望的。但是,它會創建一個../build/Grid文件夾,並在此文件夾中是另一個CMakeFiles文件夾,然後它將包含一個example1.dir文件夾。如果我切換子目錄的順序,首先使用Grid和Example第二個例子,而Grid.dir則處於例子子目錄中。
這似乎不正確,我將不勝感激在解決此問題的任何幫助。
我期望../build/CMakeFiles應該包含一個Grid.dir和一個examples.dir文件夾。
我掌握CMake的副本,因此,如果答案是在那裏我只需要一個頁碼。 – slaughter98