我使用eclipse構建混合彙編代碼和C源代碼文件的avr-gcc項目。 我想擺脫eclipse的自動生成文件生成,因爲我需要將一些進程自動化到makefile以及其他原因。混合使用C和彙編源代碼並使用cmake構建
我前幾次使用cmake,我很高興,所以我想嘗試使用它編譯我的源文件。一切按照預期與C源一起運行。問題是,最後我需要編譯一些彙編文件(實際上是2)並將它們添加到目標中。
我搜索了一下,但我沒有找到一個方法來做到這一點。 有人有關於如何做到這一點的想法?
的問題是,在月食我 -x彙編程序與-CPP
加入到GCC參數列表。我需要找到一種方法來選擇性地將此參數添加到標準gcc參數列表中,僅用於asm文件。我沒有找到任何方式來做到這一點。
預先感謝您
解決方案:在的CMakeLists.txt 集合中的每個文件,在工具鏈文件的同一列表
enable_language(C ASM)
set (SOURCES
foo.c
bar.c
foobar.s
)
add_executable(program ${SOURCES})
編譯,你應該把:
SET(ASM_OPTIONS "-x assembler-with-cpp")
SET(CMAKE_ASM_FLAGS "${CFLAGS} ${ASM_OPTIONS}")
第二行就是如果你需要在編譯asm文件時傳遞額外的選項。我想要通過所有的CFLAGS加上一些ASM_OPTIONS
你能描述更準確編譯彙編源代碼時出現了什麼問題? – 2013-02-28 10:57:41
我編輯了我的帖子。請看看它的新細節。我希望他們明白什麼是問題。再次感謝你 – andyinno 2013-02-28 13:30:11
我不明白。你不想使用Eclipse生成的makefile,並抱怨Eclipse的Makefile文件寫入? – vonbrand 2013-02-28 20:14:11