2014年8月11日 星期一

顯示make編譯信息

現在在編code的時候,因為在確認一些細節,想了解實際的的編
但是,編譯的過程中,並沒有把make的實際細節顯示出來。

我知道可以透過@與-s或--silent把完整的訊息隱藏起來,
但我的Makefile並沒有這一些東西啊,為什麼還是會隱藏起來呢?

原來是在build kernel module的時候,會使用的linux kernel的makefile,而kernel的makefile有預設隱藏這一些訊息。

有兩個方式
1. 則要到kernel的makefile把這一些部分註解掉。
要俢改的檔案位置是在/usr/src/linux-2.6.38.8/Makefile
...
ifeq ($(KBUILD_VERBOSE),1)
# quiet =
# Q =
else
# quiet=quiet_
# Q = @
endif

# If the user is running make -s (silent mode), suppress echoing of
# commands

ifneq ($(findstring s,$(MAKEFLAGS)),)
# quiet=silent_
endif

#export quiet Q KBUILD_VERBOSE
...

如此一來,重新編譯的時候,就可以顯示完整的編譯過程了。

2. 使用make V=1就可以顯示完整的訊息了, 這個方式就超級方便的了。

參考資料:
顯示make編譯信息
Linux內核make命令選項