cmake和make區(qū)別
2017-02-01 03:29:16
12756
1.用編輯器編寫源代碼,如.c文件。
2.用編譯器編譯代碼生成目標(biāo)文件,如.o。
3.用鏈接器連接目標(biāo)代碼生成可執(zhí)行文件,如.exe。
但如果源文件太多,一個(gè)一個(gè)編譯時(shí)就會(huì)特別麻煩,于是人們想到,為什么不設(shè)計(jì)一種類似批處理的程序,來批處理編譯源文件呢,于是就有了make工具,它是一個(gè)自動(dòng)化編譯工具,你可以使用一條命令實(shí)現(xiàn)完全編譯。但是你需要編寫一個(gè)規(guī)則文件,make依據(jù)它來批處理編譯,這個(gè)文件就是makefile,所以編寫makefile文件也是一個(gè)程序員所必備的技能。
對(duì)于一個(gè)大工程,編寫makefile實(shí)在是件復(fù)雜的事,于是人們又想,為什么不設(shè)計(jì)一個(gè)工具,讀入所有源文件之后,自動(dòng)生成makefile呢,于是就出現(xiàn)了cmake工具,它能夠輸出各種各樣的makefile或者project文件,從而幫助程序員減輕負(fù)擔(dān)。但是隨之而來也就是編寫cmakelist文件,它是cmake所依據(jù)的規(guī)則。所以在編程的世界里沒有捷徑可走,還是要腳踏實(shí)地的。
原文件--camkelist ---cmake ---makefile ---make ---生成可執(zhí)行文件
