最近在研究怎么在 deepin 上使用 makedeb 的时候,误打误撞发现了一个叫 apt-build 的从源码编译并安装 .deb 包的工具,在此分享给大家。
通常在 deepin 上安装软件的时候,可以直接从软件仓库中方便地获取二进制软件包。但有的时候,你可能会希望对软件包进行定制或重新打包,包括但不限于以下情况:
1、你想给某个软件包打个补丁。这时就需要先获取源码,打上补丁,然后编译安装。
2、deepin 的一个共享库更新了,但依赖这个库的软件没有及时重新构建。如果受影响的软件是开源的,重新编译打包通常能解决问题。
3、你不满足于 deepin 提供的二进制包的性能,希望增加一些优化参数并自行编译。
如果你有上述需求,但对 Debian 系的打包方式不太了解,或者希望能简化复现或定制源自仓库的软件包的过程,那么你很可能需要像 apt-build 这样的获取源码编译安装一条龙服务
deepin 的软件仓库中已经收录了 apt-build,因此可以直接用下列命令安装:
sudo apt install apt-build
安装过程中会让你设置本地仓库和编译选项,如果不确定的话直接按回车选择默认的就好了。后续还可以在 /etc/apt/apt-build.conf 中修改配置。
安装完成后,确保在 /etc/apt/source.list 中启用了源码仓库(去掉 deb-src 前的 #),就可以用 apt-build 安装软件了。使用方法和 apt-get 差不多,例如从源码构建安装 aria2:
sudo apt-build install aria2
如果需要打补丁,只需要在命令结尾加上 --patch=(补丁文件绝对路径) 就可以了。例如,给 aria2 打上加速补丁(假设你把这个补丁保存为 ~/aria2-fast.patch):
sudo apt-build install aria2 --patch=$HOME/aria2-fast.patch
更多使用方法,可以用 man apt-build 查看。目前我也是刚刚接触 apt-build,还有很多操作没尝试过。如果有什么问题或者新的发现,欢迎在楼下交流
那是不是vlc就可以解决了?!
我试试
vlc 现在 deepin 主仓库的版本直接就能用了。倒是我在尝试用 apt-build 编译 vlc 的时候出现了奇怪的权限错误
Popular Ranking
Popular Events
最近在研究怎么在 deepin 上使用 makedeb 的时候,误打误撞发现了一个叫 apt-build 的从源码编译并安装 .deb 包的工具,在此分享给大家。
通常在 deepin 上安装软件的时候,可以直接从软件仓库中方便地获取二进制软件包。但有的时候,你可能会希望对软件包进行定制或重新打包,包括但不限于以下情况:
1、你想给某个软件包打个补丁。这时就需要先获取源码,打上补丁,然后编译安装。
2、deepin 的一个共享库更新了,但依赖这个库的软件没有及时重新构建。如果受影响的软件是开源的,重新编译打包通常能解决问题。
3、你不满足于 deepin 提供的二进制包的性能,希望增加一些优化参数并自行编译。
如果你有上述需求,但对 Debian 系的打包方式不太了解,或者希望能简化复现或定制源自仓库的软件包的过程,那么你很可能需要像 apt-build 这样的获取源码编译安装一条龙服务
deepin 的软件仓库中已经收录了 apt-build,因此可以直接用下列命令安装:
安装过程中会让你设置本地仓库和编译选项,如果不确定的话直接按回车选择默认的就好了。后续还可以在 /etc/apt/apt-build.conf 中修改配置。
安装完成后,确保在 /etc/apt/source.list 中启用了源码仓库(去掉 deb-src 前的 #),就可以用 apt-build 安装软件了。使用方法和 apt-get 差不多,例如从源码构建安装 aria2:
如果需要打补丁,只需要在命令结尾加上 --patch=(补丁文件绝对路径) 就可以了。例如,给 aria2 打上加速补丁(假设你把这个补丁保存为 ~/aria2-fast.patch):
更多使用方法,可以用 man apt-build 查看。目前我也是刚刚接触 apt-build,还有很多操作没尝试过。如果有什么问题或者新的发现,欢迎在楼下交流