安装说明因程序而异,尽管有一些成熟的工具,如autotools(包括automake和autoconf)和cmake。
由于程序可以使用不同的编程语言,很难给出适用于所有软件包的通用命令。例如,Python通常有setup.py脚本,而C程序通常使用autotools或至少一个Makefile。
我总是从查找INSTALL、README或类似文件开始。如果您需要从源代码编译程序,您可能需要build-essential
软件包,该软件包依赖于编译器和其他通用开发软件包。
根据您要编译的程序,您可能需要安装其他依赖项。请查看README或./configure
脚本的输出(这是一个位于提取源代码根目录中的可执行文件)。例如,如果它说您需要“x11开发头文件”,请尝试在存储库中找到“x11-dev”或“libx11-dev”(在这种情况下,您要找的是libx11-dev
)。
使用autoconf/automake构建的源代码分发可以通过以下方式提取和配置:
tar xf foo-1.0.tar.gz
cd foo-1.0
./configure
make
sudo make install
使用
./configure --help
查看可用选项。默认情况下,文件通常安装在
/usr/local
中,这是完全可以的。除非您要将文件打包成.deb文件,否则不要将此前缀更改为
/usr
,因为它可能与软件包管理系统(dpkg)发生冲突。
make
应该开始编译所有内容,而
make install
将文件安装到指定位置(写入特权位置如
/usr/local
需要
sudo
)。要稍后卸载它,请从源目录运行
sudo make uninstall
(前提是软件包已经正确构建了autoconf/automake,这是开发人员的责任,而不是您作为用户的责任!)
如果您只是想从计算机上的软件中心编译软件包,请按照以下步骤进行(相应地替换
package
和版本):
sudo apt-get build-dep package
apt-get source package
cd package-1.0
dpkg-buildpackage -b -uc -us
请参阅各自的手册页面,以获取有关命令的更多详细信息(例如,在终端中运行
man dpkg-buildpackage
)。执行这些命令后,您将在父目录中获得一个.deb文件。建议尽可能使用Ubuntu软件源中的软件包。上述步骤仅供教育目的,通常在构建软件包之前,您需要对某些文件进行修改。