顯示 (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
發佈了39 篇原創文章 · 獲贊 19 · 訪問量 16萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章