博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
编译安装和软件包安装
阅读量:6955 次
发布时间:2019-06-27

本文共 1061 字,大约阅读时间需要 3 分钟。

Linux平台上的软件安装分为编译安装和软件包安装,其中软件包安装最为简单,可以YUM直接安装,也可以把RPM包下载到本地再安装,总之省时省力,另外如果你想看YUM安装后,软件所涉及的目录有哪些,比如配置文件、程序文件都放在什么地方,也很简单,使用下面的命令:

1
rpm -ql 软件名称

如下图:

今天我们来说一下编译安装是什么,为什么要用编译安装。

一般我们从网上下载的tar.gz的包都是源码包,针对源码包的软件安装成为编译安装。什么叫编译?简单来说就是把源代码变成适合当前平台的二进制文件,让内核可以识别。

编译安装的大体过程如下:运行源码包中的config或者configure检测程序(相信大家肯定熟悉),这个脚本一般后面都会跟一些参数,不同软件参数会不同。这个程序就是找到所需的函数库,编译器和其他资料,然后会生成一个Makefile文件,如果过程顺利,你就可以运行make进行安装,此时就Make命令就会读取生成的Makefile文件然后调用GCC编译器进行编译,然后最后通过make install命令进行安装。有时我们会看到下面的命令使用方式:

1
make 
&& 
make 
install

这就是把两个命令一次录入,然后按顺序执行,好处是不同等着。软件的安装位置、启动的特性等都是在configure阶段所指定的。具体可以使用下面命令来查看软件支持多少可用参数:

1
.
/configure 
--help

这里需要说明的是:GCC其实可以直接编译程序文件,为什么还需要根据makefile,这里最直接的原因就是效率问题,一个软件不可能只有一个程序文件,还有其他的所需文件,如果用GCC逐个编译实在太麻烦,所以用makefile比较高效。

注意事项:makefile生成以后,可以运行make test进行测试。另外如果第一次编译失败,第二次编译之前(make之前,configure之后)要运行make clean命令把之前的编译清除掉。

make clear:只是删除make产生的文件,它不能删除当前目录下产生的配置文件和build产生的文件

make distclean:类似于make clear但是它可以删除当前目录下产生的配置文件和build产生的文件

不是所有软件都可以通过软件包管理器安装,尤其是新版的软件。

      本文转自linuxjavachen  51CTO博客,原文链接:http://blog.51cto.com/littledevil/1863043,如需转载请自行联系原作者

你可能感兴趣的文章
Spring AOP报错
查看>>
c语言二维数组与指针
查看>>
【CodeForces 699D】Fix a Tree
查看>>
V神:zk-snarks技术可以帮助以太坊扩容,有望达到500笔交易/秒
查看>>
你好RunLooooooop
查看>>
关于Web开发中的“程序=数据结构+算法”
查看>>
说说资源加载的问题(Class的getResource方法)
查看>>
代码片段
查看>>
【跃迁之路】【738天】程序员高效学习方法论探索系列(实验阶段495-2019.2.28)...
查看>>
C++回声服务器_6-多进程pipe版本服务器
查看>>
面试官问你“有什么问题问我吗?”,你该如何回答?
查看>>
Fabric架构演变之路
查看>>
android课程表控件、悬浮窗、Todo应用、MVP框架、Kotlin完整项目源码
查看>>
go-micro 框架源码剖析 之 函数选项模式
查看>>
使用scrapy抓取Youtube播放列表信息
查看>>
python文件打包利器之pyinstaller的使用
查看>>
盒子边界(根据理解和测试记录,在概念上可能有描述错误,推荐补充)
查看>>
2019年到了,送你一份最新Java架构图谱(性能优化+微服务+……)
查看>>
react16生命周期方法
查看>>
Java™ 教程(Lambda表达式)
查看>>