代碼編譯 Compile、Make、Build 的區別


代碼編譯 Compile、Make、Build 的區別

https://blog.csdn.net/fanzheng220112583/article/details/7780250

 

VC++6.0中Compile和Build的區別

"compile"是“編譯”的意思,“build”是“鏈接”的意思。
compile 的作用是對你的代碼進行語法檢查,將你的文本程序語言轉化成計算機可以運行的“01010....”形式的二進制文件。
build 的作用是將你在程序中調用到的類庫融合到你的程序中,比如你用到了printf()函數,那么內部實現該函數的類庫代碼就會添加到你的程序中。
compile過程生成“.obj”文件或".o"文件,這個和編譯器有關,vc++中是“.obj”文件。
build過程生成“.exe”文件。這個可以直接運行
理論上來說應該先點"complile",再點"build"。不過在vc++中直接點“build”它會自動先給你compile再build。

Java 中Compile、Make和Build的區別

針對Java的開發工具,一般都有Compile、Make和Build三個菜單項,完成的功能的都差不多,但是又有區別。

編譯,是將源代碼轉換為可執行代碼的過程。編譯需要指定源文件和編譯輸出的文件路徑(輸出目錄)。

Java的編譯會將java編譯為class文件,將非java的文件(一般成為資源文件、比如圖片、xml、txt、poperties等文件)原封不動的復制到編譯輸出目錄,並保持源文件夾的目錄層次關系。

在Java的集成開發環境中,比如Eclipse、IDEA中,有常常有三種與編譯相關的選項Compile、Make、Build三個選項。

這三個選項最基本的功能都是完成編譯過程。但又有很大的區別,區別如下:


1、Compile:只編譯選定的目標,不管之前是否已經編譯過。

2、Make:編譯選定的目標,但是Make只編譯上次編譯變化過的文件,減少重復勞動,節省時間。(具體怎么檢查未變化,這個就不用考慮了,IDE自己內部會搞定這些的)

3、Build:是對整個工程進行徹底的重新編譯,而不管是否已經編譯過。Build過程往往會生成發布包,這個具體要看對IDE的配置了,Build在實際中應用很少,因為開發時候基本上不用,發布生產時候一般都用ANT等工具來發布。Build因為要全部編譯,還要執行打包等額外工作,因此時間較長。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM