Linux 中,如何顯示 (gcc)make時實際執行命令


問題:

調試編譯問題,如何獲取,GCC(或許make)時,實際編譯器和鏈接器正在執行的命令?

 

解決方法:

方法一:通用方法

使用dry run,如下

    $ make -n

這將顯示make 命令正在試圖做的事情。

通過 $ make -h 命令,查看幫助可知,make -n實際並不運行任何命令,只是把make試圖做的事情顯示出來。

同一命令的等價參數

-n, --just-print, --dry-run, --recon

         Don’t actually run any commands; just print them.

 

方法二:特定方法,適用於使用autotools產生的庫makefile文件

使用autotools(你必須發布./configure)產生的庫makefile文件常常有一個verbose選項,所以基本上,使用

    make VERBOSE=1 或 make V=1

你將獲取到全部命令。但是這取決於makefile產生的方式。

make命令的-d選項可能會有幫助的,但是會有很長的輸出,而且也不是實際運行的命令,而是大量的調試信息。

-d 選項

  Print lots of debugging information

 

參考資料:

How do I force make/gcc to show me the commands?

http://stackoverflow.com/questions/5820303/how-do-i-force-make-gcc-to-show-me-the-commands


免責聲明!

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



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