0
我正在寫的CMakeLists.txt與此內容:cmake的add_subdirectory不正確編譯
project(FullLibrary C)
enable_language(C ASM)
cmake_minimum_required(VERSION 2.8)
add_subdirectory("${PROJECT_SOURCE_DIR}/Asf")
ASF是從愛特梅爾庫將建立在微處理器。如果我從這個文件中編譯它,我可以直接編譯它。我所做的是創建目錄內的另一個文件與此內容:
set (ASF_SOURCES
source_files_removed_for_brevity.c
)
add_library(asf4arm ${ASF_SOURCES})
SET_TARGET_PROPERTIES(asf4arm PROPERTIES LINKER_LANGUAGE C)# CXX ASM)
SET_TARGET_PROPERTIES(asf4arm PROPERTIES LINK_FLAGS "${LINKER_FLAGS}")
我編譯時收到的錯誤是: 致命錯誤:打開依賴文件Asf_arm/CMakeFiles/asf4arm.dir/ASF/SAM /驅動器/usart/usart.c.obj:沒有這樣的文件或目錄 我檢查和目錄是空的,但我沒有任何編譯錯誤。 如果我複製並粘貼主CMakeLists.txt中的列表,並更新路徑,一切正確編譯和庫正確生成。 我想我錯過了另一隻眼睛可以看到的東西。 有什麼建議嗎?
感謝您的評論尼克。我已經嘗試過了。我現在重新檢查,但它不起作用。錯誤是一樣的。謝謝你的嘗試。 – andyinno 2014-10-06 07:29:06
看起來目錄名稱錯誤。它看起來像目錄名稱是Asf4Arm而不是Asf .. – Nick 2014-10-06 20:50:08
是的。我注意到了它。我只是不明白爲什麼。交叉編譯工具鏈的一個可能的錯誤?今天將會是這個首先設置它的人。他知道cmake比我好很多。我會看看他是否知道這個問題。 – andyinno 2014-10-07 06:38:52