如何管理从源程序安装的程序?

如何管理从源程序安装的程序?

我有服务器(Debian 或 Centos),我想从源安装程序,因为我总是可以拥有最新的软件。如果我想从源代码安装某些程序,我通常会执行以下步骤:

  1. 下载包含源代码的存档
  2. 解压并cd到包含源代码的目录
  3. 跑步./configure prefix=/usr/local
  4. make && sudo make install

之后,我删除下载的存档和解压文件夹及其源代码。

我的问题是:

  1. 如果我想将程序更新到新版本,我应该执行哪些步骤?
  2. 如何删除以这种方式安装的程序?
  3. 安装后删除带有源的文件夹是否正确,或者以后可能有用?

答案1

你不知道。设置您自己的 RPM,从中创建存储库,然后让发行版的工具接管。

答案2

安装软件的最简单方法是让其他人为您构建它。如果你想要最新的软件(通常在服务器上不是一个好主意,最好保持稳定的系统),不要使用 CentOS(它是主要发行版中最保守的),也不要使用 Debian stable。使用 Fedora、Debian stable 或 Arch Linux。

如果你喜欢痛苦并坚持编译自己的程序,或者如果你确实需要一些程序的前沿,那么使用存放管理已安装的目录树。其原理是,将每个程序安装在其自己的子目录(例如 )中/usr/local/stow/PROGRAM_NAME,并stow创建符号链接来填充公共目录/usr/local。看跟踪程序获取快速入门指南。

您可能希望保留源代码,以防您想要重新编译(例如修复错误后)。否则,通常您不需要源。

答案3

你真的应该使用类似checkinstall-tool 的东西,它将手动构建的软件打包到 debs/rpms 中,然后可以以通常的方式安装和删除(ubuntu 的文档:https://help.ubuntu.com/community/CheckInstall)。

如果你想继续手工做事,一些 makefile 的目标uninstall可以提供帮助。如果没有,那么您只需手动卸载文件即可;您可以使用make -n install,它将显示安装中正在进行的操作。这两者都要求您仍然安装原始源代码树。

相关内容