编译源代码安装软件大体步骤

使用包管理方式安装软件与编译源代码的区别,包管理方式提供的(以rpm为例)软件大多只保留了一部分常用功能,如果我们需要使用软件其它功能而rpm包没有,这咱情况下就需要编译源代码了。编译源代码的方式安装的软件,可以自由选择安装那些功能,而rpm是固定好的。源代码安装选择功能的灵活性好,rpm包安装则比较简便。而且大多数情况下,软件以源代码方式发行比rpm包要快。

源代码的获取方式,

编译源代码安装软件依赖开发环境,编译c程序需要gcc编译器,编译c++需要gcc-c++编译器,如果没有,需要安装。使用yum或rpm安装。

make 工具,为了维护源代码方便,一个代码稍多的软件可能分为多个文件,而编译时他们之间有相互依赖的关系,编译时必须有先后顺序。程序开发者会用项目管理工具(make),用这个工具为make提供一个配置文件,这个配置文件中描述了make如何调用gcc和这些文件的先后编译顺序。

configure 脚本文件,此文脚本件用会检查编译环境,人为设定需要启动软件那些功能,安装在那个目录等。

configure 支持的选项,每个软件略有不同。常用的有

--help 获取帮助

--prefix=/PATH 指定软件安装路径。

--sysconfdir=/PATH 指定安装软件的配置文件所在目录

--enable-特性名称  启用某个特性或选项,启用某个特性可能依赖额外开发环境。

--disable-特性名称  禁用某个特性

--with-FUNCTION 或 --with=/lib/filename 指定依赖的功能或特定路径下的文件。

--without-FUNCTION

编译安装源代码的顺序,

解压下载的软件包-->cd到解压后的目录-->./configure设定编译选项-->make(编译程序)-->make install(把编辑好的程序放到指定目录)

示例:编译安装nginx软件过程

# ./configure --prefix=/usr/nginx --conf-path=/etc/nginx/nginx.conf

报错

./configure --prefix=/usr/nginx --conf-path=/etc/nginx/nginx.conf --without-http_rewrite_module

确认没有报错

#make

确认没有报错

#make install

查看配置文件的目录

查看nginx安装目录

启动nginx服务

#/usr/nginx/sbin/nginx &

#ss -tnlp

为了让nginx像rpm安装的程序一样,需要做以下操作

定义PATH环境变量,在/etc/profile.d/建一个文件名为nginx.sh。内容是export PATH= $PATH:/usr/nginx/sbin

添加man手册,给/etc/man.conf文件中添加

MAN /手册所在的位置

如果其它其它程序依赖此程序的开发环境,则需要把此程序的库和头文件导出

编辑/etc/ld.so.conf.d/nginx.conf,在此文件中添加库文件路径,一行一个库文件路径。然后执行ldconfig触发新成生库文件在所在位置,导出头文件只能创建链接,把此软件所在库的目录链接到/usr/include/下。

时间: 2024-10-18 20:17:07

编译源代码安装软件大体步骤的相关文章

CentOS下的编译源代码安装软件( 以安装python3为例 )

在 CentOS 下安装软件,可以使用 rpm软件包.yum工具.自行下载源代码进行编译安装,其中编译安装的定制性较高 对于一些在软件,自行下载源代码进行编译安装较为方便 程序:源代码 --> 编译 --> 链接 --> 运行 执行编译安装步骤: 获取源代码并解压 #tar xf xxx.tar.gz //或者: #tar xf xxx.tar.bz2 在解压完的源代码目录下执行 configure 脚本 #./configure [options] 选项: --help 查看该脚本帮助

源代码安装软件-MySQL

一.源码安装 1.经典的源代码安装三步曲: 1.编译前的配置 ./configure 2.编译 make 3.安装 make install 2.源代码软件安装步骤: 1.下载软件包 2.校验软件包 3.解包 4.进入解包得到的目录 5.认真阅读README和INSTALL文件 6.按照README或者INSTALL文件中的安装步骤进行安装 实验环境搭建: 1.basic server安装选项 2.配置磁盘80G,swap 1024M,其他分配给/分区 3.安装完成以后,配置网络 主机名字.IP

教你使用rpm、yum、编译等方式安装软件

一.什么是包管理器? 很多人都不知道包管理器的概念,首先我们要了解软件是如何运行的,我们这里介绍C程序如何实现从代码到执行程序的过程. 程序源代码--> 预处理--> 编译--> 汇编--> 链接 -->执行 程序源码预处理后进行编译,编译成目标代码,然后汇编成二进制代码,最后将源程序所用的库代码与目标代码合并,最终形成可执行的二进制代码 但是一般情况下一个程序不止一个二进制程序,可能存在配置文件,帮助文档等相应文件,这时候我们就需要一个打包软件将程序包各组件打包,打个比方,

【Linux探索之旅】第四部分第五课:源码编译,安装便利

内容简介 1.第四部分第五课:源码编译,安装便利 2.第四部分第六课:DNS和域名,一探究竟 源码编译,安装便利 这一课相对轻松,毕竟刚跨年(2015-2016)么,新年怎么能让大家一个头两个大呢~ 小编怎么可能这么坏呢?小编是这样的人吗?(是啊 -_-#). 之前的课程([Linux探索之旅]第二部分第七课:软件安装,如虎添翼)中,我们已经了解过Ubuntu这个Linux的发行版下安装软件是何等方便,用apt-get这个工具可以轻松搞定.这种方式可以让我们下载并安装大部分的软件. 其他Linu

Linux基础:从源码安装软件

为什么要从源码安装软件 在什么情况之下,我们需要从源代码安装软件呢?我想不外乎这些情形:一种情况是软件放出了新的版本,而所用的发行版并没有及时跟进,这时候,想要尝鲜的话,就非得靠自己不可:另一种情形是不管是软件的开发者,还是现用的系统都没有提供可直接使用的二进制包,而自己又非要使用该软件,那么也需亲自出马才行:当然,还有其他的情形.总而言之,学会从源代码安装软件是一项非常重要的技能. 什么是make 与 configure make 是一支程序,当执行make 时,make 会在当前目录下寻找

linux 安装软件,卸载软件 等的几种方式

安装软件的步骤和基本原则: 1. rpm安装: 定义: rpm是由红帽公司开发的软件包管理方式,使用rpm我们可以方便的进行软件的安装.查询.卸载.升级等工作.但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时. rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种.二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译.安装.源代码包经常以src.rpm作为后缀名. 命令: -ivh:安装显示安装进度--install--verbose

ubuntu下使用Tesseract-ocr(编译、安装、使用、训练新的语言库)

本文前半部分是来自http://www.qisanfen.com/?p=185的一篇文章,主要讲了安装.训练的大致流程,注意如果需要训练语言库需要把所需要的库安装完整 后半部分大致是官方wiki的翻译版本 如果只安装,不训练,可以看我的另一篇比较简洁的文章http://blog.csdn.net/yimingsilence/article/details/51276138 关于训练的具体细节可以查看官方wiki : https://github.com/tesseract-ocr/tessera

linux下的软件包管理与源代码方式安装软件

1.什么是软件包?软件包是指将应用程序.配置文件和管理数据打包的产物.2.Linux下常用的基本软件包管理工具有两种:dpkg工具和RPM工具.对应于两种不同格式的软件包,即.deb格式与.rpm格式.dpkg软件包工具主要用于Debian和Ubuntu这两个发行版本.RPM工具用于绝大多数的Linux发行版本,如Red Hat.openSUSE等.3.使用dpkg和rpm工具安装软件需要考虑软件的依赖性问题,只有应用程序所依赖的所有库和支持都已经正确安装好了,软件才能被正确安装.4.dpkg工

编译安装linux内核步骤

编译安装linux内核步骤: 一.获取内核源码 源码网址:www.kernel.org 二.解压内核源码 首先以root帐号登录,然后进入/usr/src子目录.如果用户在安装Linux时,安装了内核的源代码,则会发现一个linux-x.y.z的子目录.该目录下存放着内核x.y.z的源代码.此外,还会发现一个指向该目录的链接linux.删除该连接,然后将新内核的源文件拷贝到/usr/src目录中,并解压:     # tar zxvf Linux-2.3.14.tar.gz 文件释放成功后,在/