簡體   English   中英

Linux內核編譯錯誤

[英]Linux kernel compile error

我從 Linus 的 github 克隆了內核源代碼,我對 usbhid 驅動程序做了一些修改(作為模塊編譯得很好,沒有錯誤),但是如果我嘗試構建整個內核,我會收到這個錯誤:

AR      drivers/gpu/drm/built-in.o
AR      drivers/gpu/built-in.o
Makefile:1023: recipe for target 'drivers' failed
make: *** [drivers] Error 2

而這一切都沒有什么具體的。 可能是什么問題?

更新:9-15-18 此問題已解決。內核現在將使用我在下面給出的命令進行編譯。

同樣的問題在這里。 4.19.0-rc3 不會在 Threadripper 2990WX 上編譯。 順便說一句,我目前正在運行 4.19.0-rc2,沒有任何問題。

這些是我使用的命令。 請注意,我也嘗試不使用 LD 靜態標志。

wget https://git.kernel.org/torvalds/t/linux-4.19-rc3.tar.gz && tar -xzf linux-4.19-rc3.tar.gz && cd linux-4.19-rc3 && make -j 64 clean && make -j 64 mrproper &&  zcat /proc/config.gz >> ./.config && LDFLAGS=--static make -j 64

問題出在您的配置文件中。 我之前也遇到過同樣的問題,似乎是由於通過make menuconfig生成的.config文件中缺少CONFIG選項。

您需要在 .config 文件中添加這兩個 CONFIG 選項:

CONFIG_EXTRA_FIRMWARE_DIR="lib/firmware"
CONFIG_EXTRA_FIRMWARE="<name_of_firmware_along_with_path>"

在某些平台上,GPU 使用的固件需要通過與內核拼接來內置。 在構建內核時,此固件放置在CONFIG_EXTRA_FIRMWARE選項提供的目錄路徑中。 除非我們不提供CONFIG_EXTRA_FIRMWARE_DIR路徑來告訴內核從哪里選擇這個固件,否則會發生上述構建失敗。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM