我将工具链测试构建ppa添加到我的Xenial系统中,以便我可以使用GCC 7进行开发。在某种程度上,它也更新GCC 5到5.4.1-2ubuntu1~16.04,最新版本可在PPA。然而,这个版本的GCC 5并没有最近的幽灵/熔毁补丁。所以,上一次我做内核更新(用这些补丁进行编译)时,我的DKMS模块在没有补丁的情况下重新编译,版本魔术不匹配,它们拒绝加载,破坏了各种东西。
我想删除工具链GCC 5(和相关的软件包),并替换它的股票GCC 5 (ver )。5.4.0-6ubuntu1~16.04.9,它有重极化补丁),但理想情况下,我想这样做,不触发卸载我的所有DKMS模块和其他事情,依赖GCC 5。我还想保留工具链测试PPA,GCC-7。最简单的方法是什么?
发布于 2018-04-04 20:12:48
我最后做的是:
apt check的好时机,确保您没有破坏任何东西)。/etc/apt/preferences.d/中创建一个包含软件包的文件: gcc-5 cpp-5g++-5 gcc-5-base -5-base:i 386-5-doc libasan2 libgcc-5 dev libgcj16 libmpx0 libobjc-5-dev libstdc+-5-dev Pin: release =LP-ubuntu-toolchain test Pin -优先级:-1运行apt-cache policy gcc-5并检查以确保旧版本是首选的。modinfo进行双重检查,以确保新编译模块的版本包含"retpoline“。reboot,希望一切都还能正常工作。https://askubuntu.com/questions/1021992
复制相似问题