![Bumblebee 构建内核模块](https://linux22.com/image/885956/Bumblebee%20%E6%9E%84%E5%BB%BA%E5%86%85%E6%A0%B8%E6%A8%A1%E5%9D%97.png)
当我第一次设置时,nvidia-prime 和 prime-indicator 就可以一起工作。
几天前,我安装了内核 4.7;安装后,我注意到 prime-indicator 显示的是 nvidia 符号,但实际上使用的是英特尔显卡。使用 nvidia-settings 进行切换也不起作用。
因此,我决定改用 bumblebee。删除并清除了 nvidia* 等。按照说明安装了 bumblebee这里后来我也尝试过这方法。
在这两种情况下,optirun/primusrun 都告诉我“无法加载 GPU 驱动程序”。因此,我去 Bumblebee 进行故障排除,似乎我的 nvidia .ko 文件不存在。(bumblebeed:未找到模块“nvidia”。)
故障排除:“然后确保模块已构建。”
如何构建这些内核模块?
更新:
我尝试使用 dkms 自动安装我的 nvidia 驱动程序,这是它的输出:
Building module:
cleaning build area....
'make' -j8 NV_EXCLUDE_BUILD_MODULES='' KERNEL_UNAME=4.7.0-040700-generic IGNORE_XEN_PRESENCE=1 IGNORE_CC_MISMATCH=1 SYSSRC=/lib/modules/4.7.0-040700-generic/build LD=/usr/bin/ld.bfd modules.....(bad exit status: 2)
ERROR (dkms apport): kernel package linux-headers-4.7.0-040700-generic is not supported
Error! Bad return status for module build on kernel: 4.7.0-040700-generic (x86_64)
那么,我的内核不受支持吗?
我的设置:XPS15 9550 笔记本电脑,内核为 4.7.0-040700-generic 的 Ubuntu 16.04。
答案1
好的,现在可以正常工作了。
脚步:
- 完全删除与 nvidia、bumblebee 及其依赖项有关的所有内容。
- 更新至内核 4.7.2(不确定这是否是关键)
- 通过附加驱动程序界面安装 nvidia-367,然后重新启动。
- 添加
ppa:bumblebee/testing
。 - 通过 synaptics 安装了 bumblebee、bumblebee-nvidia、primus 和 prime-indicator。
- 运行
sudo prime-select intel
并重新启动。 - 已修改
/etc/bumblebee/bumblebee.conf
,将“当前”替换为“367”,并重新启动。
现在我可以使用 prime-indicator 进行全局切换,或者使用 primusrun 运行特定的应用程序。