cmake是干什么的 用cmake和makefile哪個(gè)好?
用cmake和makefile哪個(gè)好?GCC是C語言編譯器,而G是C語言編譯器。雖然GCC命令也可以用來編譯C語言的源代碼,但它最終會(huì)調(diào)用G。make工具使用您提供的一個(gè)名為makefile的文件,根
用cmake和makefile哪個(gè)好?
GCC是C語言編譯器,而G是C語言編譯器。雖然GCC命令也可以用來編譯C語言的源代碼,但它最終會(huì)調(diào)用G。make工具使用您提供的一個(gè)名為makefile的文件,根據(jù)makefile的內(nèi)容來決定如何編譯源文件。至于make和cmake的區(qū)別,可以理解make需要使用Makefile,而cmake是生成Makefile的工具。
makefile和Cmakelist.txt的區(qū)別?
Cmake是建筑系統(tǒng)的發(fā)電機(jī),Cmake代表跨平臺制造。它可以生成makefile文件、ninja構(gòu)建文件、KDevelop或Xcode項(xiàng)目以及visualstudio解決方案。從同一個(gè)CMakeLists.txt文件文件來生成項(xiàng)目。如果您正在編寫需要在許多不同平臺上構(gòu)建的軟件,那么cmake通常是一個(gè)不錯(cuò)的選擇。編寫程序的一般步驟如下:
1。使用編輯器編寫源代碼,例如。C文件。
2. 用編譯器編譯代碼生成目標(biāo)文件,如。O.
3。將目標(biāo)代碼與鏈接器連接以生成可執(zhí)行文件,例如。執(zhí)行。但是,如果源文件太多,則逐個(gè)編譯會(huì)特別麻煩。于是人們想,為什么不設(shè)計(jì)一個(gè)類似于批處理的程序來編譯源文件呢,于是就有了make工具,這是一個(gè)自動(dòng)編譯工具。您可以使用命令來完成編譯。但是你需要寫一個(gè)規(guī)則文件。根據(jù)它進(jìn)行批量編譯。這個(gè)文件是Makefile,因此編寫Makefile也是程序員的一項(xiàng)必要技能。對于一個(gè)大型項(xiàng)目來說,編寫makefile確實(shí)是一件復(fù)雜的事情,所以人們認(rèn)為,為什么不設(shè)計(jì)一個(gè)工具,在讀取所有源文件后自動(dòng)生成makefile,這樣cmake工具就出現(xiàn)了,它可以輸出各種makefile或項(xiàng)目文件,從而幫助程序員減輕負(fù)擔(dān)。但是還有cmakelist文件的編寫,這是cmake的規(guī)則。所以在編程世界里,沒有捷徑可走,也沒有腳踏實(shí)地。原始文件——camkelist——cmake——makefile——make——生成可執(zhí)行文件