由于硬件问题,我想在 this 之后安装一个新内核指导。 但我对这一行有点困惑:
$ sudo time fakeroot make-kpkg -j4 --initrd kernel_image kernel_headers
我必须在其中设置处理器的核心数。
我有一个四核的英特尔 i7-720QM
。但我猜是因为超线程(至少我认为我的处理器是超线程的)我必须使用选项 -j8
而不是 -j4
。这样可以吗?
注意:在上面的指南的评论中,也问了这个问题,一个答案是使用-j4
,另一个是使用-j8
,所以我现在很困惑。
亲切的问候
最佳答案
make-kpkg
的 -j4
参数(传递给底层 make
)只设置并行编译过程的数量内核构建(并且对生成的内核包没有影响)。这无关紧要(因此 -j4
或 -j8
在构建时间方面不会产生太大差异)。
我经常只传递 -j3
来让其他进程可以使用内核(例如,我在内核编译期间上网或阅读电子邮件)。
此外,make-kpkg
的某些部分本质上是串行的,无法并行化(某些 tar
正在运行....)
您甚至可以删除 -j4
(与 -j1
相同):内核构建时间会增加,但您的机器在此期间会更加响应
PS:如果父目录 (..
) 是用户可写的,则您不需要同时使用 sudo
和 fakeroot
.它将包含生成的 .deb
包。顺便说一句,您可以编辑您的 /etc/kernel-package.conf
。
关于linux - 在 Debian Wheezy 上编译内核,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18481126/