armhf 上的 Ubuntu:“使用 PPA 和 apt-get source -b”?

armhf 上的 Ubuntu:“使用 PPA 和 apt-get source -b”?

简而言之,我遇到的问题是 apt-get 似乎“忽略”了我添加的任何 PPA。我认为这是因为相应的 PPA 将其 deb 限制为 i386 和 AMD64 版本。(我使用的是 armhf。)但这会导致问题。我想使用“apt-get source -b”来构建相应的 deb。但是,即使启用了 PPA 的 deb-src 存储库,apt-cache 策略仍然无法“找到”相应的软件包。我被迫下载软件包,configure/make/checkinstall。

我是否正确地认为我应该能够通过“apt-get source -b”在 arm 上编译这些软件包?如果是这样,我该怎么做力量ubuntu 加载这些存储库?也就是说,如何阻止 apt-get 加载这些 PPA?

答案1

好的,我已尝试过此方法并且有效。:-) 对于下一个偶然发现此问题的人:

sudo add-apt-repository ppa:(name of PPA)
sudo dpkg --add-architecture amd64
sudo apt-get update
apt-cache policy (package name) #Just to make sure it's there 
sudo apt-get source -b (package name) 
sudo dpkg --remove-architecture amd64 #Do this whether the package compiles correctly or not
sudo apt-get update

此时,如果软件包由于缺少依赖项而无法编译,则可以安全地安装它们(也就是说,它们不可能来自错误的体系结构/存储库)。无论如何都不应该,但这是保险。

sudo apt-get source -b (package name) #if necessary

成功编译后,armhf在当前目录(您一直在处理的文件夹)中查找 deb 文件并:sudo dpkg -i (package name).deb

所以...可能有更优雅的方法来实现这一点,但我把这留给更有知识的用户。

笔记:通过这种方式安装的软件包将不是自动更新。您必须删除原始软件包,自己编译更新的软件包,然后重新安装。只要您不清除原始安装,您的所有偏好设置都应该会保留。

相关内容