qmake, makefile, make是什么东东,makefile简介!
qmake能夠自動生成Makefile、Microsoft Visual Studio 專案文件 和 xcode 專案文件。不管源代碼是否是用Qt寫的,都能使用qmake,因此qmake能用于很多軟件的構建過程。
手寫Makefile是比較困難而且容易出錯,尤其在進行跨平臺開發(fā)時必須針對不同平臺分別撰寫Makefile,會增加跨平臺開發(fā)復雜性與困難度。qmake會根據(jù)專案文件(.pro)里面的信息自動生成適合平臺的 Makefile。開發(fā)者能夠自行撰寫專案文件或是由qmake本身產生。qmake包含額外的功能來方便 Qt 開發(fā),如自動的包含moc 和 uic 的編譯規(guī)則。
===============================================================
關于makefile:
一個工程中的源文件不計其數(shù),其按類型、功能、模塊分別放在若干個目錄中,makefile定義了一系列的規(guī)則來指定,哪些文件需要先編譯,哪些文件需要后編譯,哪些文件需要重新編譯,甚至于進行更復雜的功能操作。Makefile 有自己的書寫格式、關鍵字、函數(shù),像C 語言有自己的格式、關鍵字和函數(shù)一樣。而且在Makefile 中可以使用系統(tǒng)shell所提供的任何命令來完成想要的工作。
Makefile 文件描述了整個工程的編譯、連接等規(guī)則。其中包括:工程中的哪些源文件需要編譯以及如何編譯、編譯順序,需要創(chuàng)建那些庫文件以及如何創(chuàng)建這些庫文件、如何最后產生我們想要的可執(zhí)行文件。盡管看起來可能是很復雜的事情,但是為工程編寫Makefile 的好處是能夠使用一行命令來完成“自動化編譯”,一旦提供一個(通常對于一個工程來說會是多個)正確的 Makefile,編譯整個工程你所要做的唯一的一件事就是在shell 提示符下輸入make命令。整個工程完全自動編譯,極大提高了效率。
Linux 環(huán)境下的程序員如果不會使用GNU make來構建和管理自己的工程,應該不能算是一個合格的專業(yè)程序員。在 Linux(unix )環(huán)境下使用GNU 的make工具能夠比較容易的構建一個屬于你自己的工程,整個工程的編譯只需要一個命令就可以完成編譯、連接以至于最后的執(zhí)行。不過這需要我們投入一些時間去完成一個或者多個稱之為Makefile 文件的編寫。
make是一個命令工具,是一個解釋makefile中指令的命令工具。Makefile(在其它的系統(tǒng)上可能是另外的文件名)在絕大多數(shù)的IDE 開發(fā)環(huán)境中都在使用,已經成為一種工程的編譯方法,比如:Delphi的make,Visual C++的nmake,Linux下GNU的make。可見,makefile都成為了一種在工程方面的編譯方法。
makefile帶來的好處就是——“自動化編譯”,一旦寫好,只需要一個make命令,整個工程完全自動編譯,極大的提高了軟件開發(fā)的效率。
如何寫makefile:
https://blog.csdn.net/ididcan/article/details/6193199
在Linux中大多數(shù)軟件提供的是源代碼,而不是現(xiàn)成的可執(zhí)行文件,這就要求用戶根據(jù)自己系統(tǒng)的實際情況和自身的需要來配置、編譯源程序后,軟件才能使用。只有掌握了make工具,才能讓我們真正享受到到Linux這個自由軟件世界的帶給我們無窮樂趣。
https://blog.csdn.net/qq_35865125/article/details/80885466
Ref:
https://www.oschina.net/p/qmake
https://baike.baidu.com/item/Makefile/4619787?fr=aladdin
轉載于:https://www.cnblogs.com/butterflybay/p/10348001.html
總結
以上是生活随笔為你收集整理的qmake, makefile, make是什么东东,makefile简介!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DDMS 使用小结
- 下一篇: Apache Cordova for i