直接在源码网站下载

在Linux发行版下通过包管理器下载

因为不同的发行版有不同的软件包管理机制,所以在此我只简单介绍ArchLinux和Ubuntu的源码下载方法,其他的发行版请自行参考网上相关文档。

ArchLinux下通过abs(Arch Build System)下载

首先,通过pacman安装abs工具

sudo pacman -S base-devel abs

然后,下载abs树

sudo abs

接着,下载特定的软件包

1
2
3
4
5
6
7
sudo abs [package_name]
列如find包:
pacman -Qo $(which find)
结果显示:"/usr/bin/find is owned by findutils 4.4.2-3"
cp -r /var/abs/core/findutils /home/your_name/findutils
cd /home/your_name/findutils
makepkg -od

makepkg简单用法

  • makepkg -od 获取软件源码,不进行构建
  • makepkg -s 自动处理软件相关依赖
  • makepkg -e 构建本地软件包

如果你想要手动安装构建的软件包

pacman -U name-of-package.xz

Ubuntu下通过apt系列工具下载

Ubuntu下依然以find命令作为列子

1
2
3
4
5
dpkg -s $(which find)
结果显示:findutils: /usr/bin/find
sudo apt-get source findutils
cd /usr/src/findutils-XXX #XXX表示版本号
sudo tar zxvf findutils-XXX.tar.gz

参考