⑴ Linux上编译安装和卸载软件(./configure && make && make install )
在Linux系统上,安装和卸载软件通常遵循"编译-安装"的步骤。首先,从源码开始,执行的命令依次是配置(./configure)、编译(make)和安装(make install)。以下是详细的步骤:
1. 配置阶段:`./configure`命令是关键,它会检查系统环境并生成Makefile,配置文件通常位于源码根目录,包含众多选项。使用`./configure --help`可以看到详细的选项,如`--prefix`用于指定安装路径,如果不设置,默认会分散到如/usr/local/bin、lib等目录。
2. 编译阶段:配置完成后,运行`make`命令进行编译。为了加速,可以使用`make -jN`命令,其中N是并行任务数,但需确保Makefile配置正确且任务数适合机器性能。
3. 安装阶段:编译完成后,`make install`将编译结果和相关文件拷贝到指定路径。若遇到权限问题,可使用`sudo make install`。某些软件可能没有提供make uninstall,此时可以通过查看`install_manifest.txt`文件手动卸载。
4. 卸载阶段:如果有make uninstall,直接运行即可。如果没有,可以通过`cat install_manifest.txt | sudo xargs rm`来逐个删除安装文件。
5. 总结:源码安装的整个过程包括了配置、检查环境并生成Makefile,然后利用Makefile进行编译和安装。对于简单的tar包,直接运行这些命令即可,但对于已打包的rpm或deb包,现代发行版通常提供了包管理器(如apt或yum)以简化安装和依赖管理。
⑵ 详解如何用源代码安装软件,以及如何卸载它
详解如何用源代码安装软件,以及如何卸载它
Linux发行版的一大优势在于包管理器和相关软件库,它们能提供自动化下载和安装软件的方式。然而,对于特定版本或自定义需求,从源代码安装软件仍是必要的。这篇文章将指导你完成从Linux系统中使用源代码安装程序,以及如何卸载这些程序。
在开始之前,首先需要了解包维护者可能无法提供所有可用软件的编译版本。因此,当遇到特定版本或自定义需求时,从源代码编译软件成为了一种常见做法。对于多数Linux用户来说,初次接触源代码编译可能感觉有些复杂,但一旦掌握,你将能进入更深入的软件定制世界。
以安装NodeJS 8.1.1为例,本文将详细介绍此过程。NodeJS的源代码可在GitHub上的github.com/nodejs/node找到。
步骤1:获取源代码
直接从GitHub下载NodeJS 8.1.1版本的源代码。对于熟悉Git和版本管理的用户,推荐使用Git工具下载源代码。如果你更习惯于图形界面工具,使用ZIP文件同样可行。
步骤2:理解构建系统
构建系统负责编译源代码以生成可执行程序。NodeJS使用GNU风格的构建系统,其核心工具是configure和make。configure脚本检查系统配置并确保项目可以构建,而make工具则执行构建指令。
步骤3:使用文件系统层次化标准(FHS)
在Linux系统中,大部分遵循FHS标准来组织文件目录。对于从源代码安装的软件,推荐将它们安装在"/opt"目录下,以避免与系统软件包发生冲突,并便于管理。
在源代码编译过程中,可能出现各种错误。文章将通过实际操作,在Debian 9.0和CentOS 7.0系统上演示如何诊断并解决常见的编译问题。
从源代码安装软件后,你可以根据需要对其进行修改。以NodeJS为例,文章将指导你如何在源代码中进行微小的修改,并验证修改是否已纳入编译版本。
安装完软件后,通常需要通过绝对路径启动它。但更简单的方法是将软件添加到PATH环境变量中,或创建符号链接到常用路径。
卸载从源代码安装的软件只需删除安装目录,如"/opt/node-v8.1.1"。确保在操作前正确清理PATH环境变量,避免可能的依赖问题。
编译软件时,可能会遇到依赖地狱的情况,即需要先编译前提条件所需的库,这些库又可能依赖其他不兼容的库。这通常是软件包维护者需要解决的问题。在本文示例中,NodeJS的依赖已预置在源代码中,无需额外处理。
通过遵循上述步骤,你可以熟练掌握从源代码安装和管理软件的技能。如果你对特定主题或更深入的讨论感兴趣,请在评论区分享,以便共同探讨。