本文简单的记录了下,在Linux下如何通过源码安装程序,以及相关的知识。

一、程序的组成部分

Linux下程序大都是由以下几部分组成:

二进制文件:也就是可以运行的程序文件

库文件:就是通常我们见到的lib目录下的文件

配置文件:这个不必多说,都知道

帮助文档:通常是我们在Linux下用man命令查看的命令的文档

二、Linux下程序的存放目录

Linux程序的存放目录大致有三个地方:

/etc, /bin, /sbin, /lib  :系统启动就需要用到的程序,这些目录不能挂载额外的分区,必须在根文件系统的分区上

/usr/bin,/usr/sbin,/usr/lib:操作系统核心功能,可以单独分区

/usr/local/bin,/usr/local/sbin,/usr/local/lib,/usr/local/etc,/usr/local/man:这个用于安装第三方程序,分别对应了二进制文件、库文件、配置文件、帮助文档的目录

通常来说我们安装程序就安装在 /usr/local目录下

 三、编译安装源程序

1、使用如下命令查看当前是否安装了gcc编译器,没有可以先用yum安装gcc

gcc --version  #查看是否安装gcc

2、解压源码包,例如:

tar -xvf nginx-1.7.7.tar.gz #解压源码包

3、进入解压好的源码包:

cd nginx-1.7.7 #进入源码包

4、执行configure文件,此文件有两个功能:1、让用户选定编译特性;2、检查编译环境。configure执行后将生成MakeFile文件。例如:

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

其中我们通过--prefix制定了安装路径,通过--conf-path制定了配置文件的具体位置。注意:不是所有的程序的configure参数都是一样的 可以使用 ./configure --help查看详细参数说明。如果该程序所依赖的库在当前系统中没有安装,则会导致configure最后报错,遇到这种情况就需要你先安装依赖库。

5、执行make命令,编译程序

make

6、编译成功后就可以安装了,执行如下命令

make install

到此程序就算安装完成了,但是不要忘了还有后续的配置哦

四、配置程序

1、修改PATH环境变量,以能够识别此程序的二进制文件路径;

修改/etc/profile文件,在文件中 添加

export PATH=$PATH:/path/to/somewhere#记得是可执行文件所在的目录,路径中不要包含可执行文件。

然后执行 :

source /etc/profile #是我们的修改生效  

2、默认情况下,系统搜索库文件的路径/lib, /usr/lib; 要增添额外搜寻路径(注意:有的程序不提供库文件,那就不需要此设置了)

在/etc/ld.so.conf.d/中创建以.conf为后缀名的文件,而后把要增添的路径直接写至此文件中;然后执行如下命令使其生效

ldconfig

3、如果程序提供了库文件,也会相应的提供头文件,一般在安装目录的include目录下,系统默认扫描头文件的路径是:/usr/include。我们可以在/usr/include下用链接连接到我们安装程序的头文件。

ln -s /usr/local/nginx/include  /usr/include/yourname

4、可能程序还提供了帮助文档,一般是安装目录下的man目录,为了我们可以使用man命令查看我们程序的帮助文档,我们需要:在/etc/man.config中添加一条MANPATH,指向我们的文档目录

转载于:https://www.cnblogs.com/duex/p/8097562.html

Linux下通过源码编译安装程序相关推荐

  1. Win10下通过源码编译安装QGIS

    1.前言 QGIS作为一款开源的桌面GIS软件,其易用性.稳定性和可扩展性受到越来越多的技术人员和学者的好评与支持,并且基于社区的开发模式使QGIS的研发和迭代非常迅速.目前,QGIS已经具有完整且稳 ...

  2. Linux 下 PostgreSQL 源码编译安装

    由于微信不允许外部链接,你需要点击文章尾部左下角的 "阅读原文",才能访问文中链接. PostgreSQL 是一个功能强大的开源对象关系数据库管理系统(ORDBMS),它从伯克利写 ...

  3. 01 linux 下tcl源码编译安装和tcl手册使用

    标签(空格分隔): 源码编译安装 2020.7.7 1 下载安装包.tar.gz 2 解压压缩包 3 进入configure文件所在文件夹,执行./configure ./configure 注解: ...

  4. linux yum源码安装mysql_linux下通过源码包安装mysql,以及yum安装

    环境介绍:本安装教程基于虚拟机CentOS7.6版本进行安装,mysql版本为5.7版本. 一.卸载已安装的mysql服务 由于我原本在虚拟机已安装过mysql,所以这里我需要先卸载掉mysql才能进 ...

  5. 在Linux下用源码编译安装apache2

    Linux下安装一个软件,最好去看下它的官方guide,apache2.4的安装安装guide 0. installation guide http://httpd.apache.org/docs/2 ...

  6. 在linux通过源码编译安装redis详细步骤

    1.下载源码包 [root@localhost opt]# wget http://download.redis.io/releases/redis-4.0.10.tar.gz 2.解压缩redis ...

  7. Linux下Poppler源码编译安装

    Poppler Poppler是用于呈现可移植文档格式(PDF)文档的免费软件实用程序库.它的开发得到freedesktop.org的支持.它通常在Linux系统上使用,并被开源GNOME和KDE桌面 ...

  8. Git 通过源码编译安装 2.12.2 遇到的问题及解决

    Git 源码: https://github.com/git/git/releases wget https://github.com/git/git/archive/v2.12.2.tar.gz 错 ...

  9. UOS系统下FFmpeg源码编译安装及注意事项

    条件 当前编译环境:国产UOS系统(基于linux),CPU是ARM架构 需要安装ffmpeg 3.4版本. 通过源码编译进行安装使用 下载源码 在github上将ffmpeg源码下载到本地:下载地址 ...

最新文章

  1. python matplotlib 显示opencv的图像
  2. 【莓闻】2009年黑莓增长显著 智能手机领域第一
  3. UVA208Firetruck 消防车(图的路径搜索)
  4. redis 简单应用
  5. scrapy.request
  6. python3 的optparse库_了解python的optparse
  7. 数据结构之删除线性表中的元素
  8. 谈表单的设计 (一) 合理对表单进行布局
  9. notepad++自动补全括号
  10. 数据抽取oracle_【跟我学】特征抽取算法与应用
  11. 【LaTeX】pdfTex error: pdflatex.exe (file simhei.ttf): cannot open TrueType font file for reading解决方案
  12. 运营有道:重新定义互联网运营
  13. 【自动驾驶】RTK(高精度的GPS测量)
  14. linux串口通讯延时,linux下串口通讯参数设置
  15. xshell4 设置自动记录日志
  16. Windows安装mysql-8.0.30-winx64.zip
  17. Python攻关之文件操作
  18. 关于Windows PowerShell
  19. [fjwc2015]Screen [从hzw神犇那里扒来的题]
  20. ath9k网卡驱动相关

热门文章

  1. c++ege为什么直线画不出来_今天让我们来练习画一款椭圆茶几
  2. 你的4nm安卓旗舰芯片来了!骁龙8 Gen 1:支持8K HDR,功耗降30%,雷军:小米12首发...
  3. 没想到,因为这场AI大会,我也可以凡尔赛一把
  4. 周末,我打开《逆水寒》参加了一场AI学术会议
  5. 嬴彻与东风商用车完成L3重卡A样车验收,加速自动驾驶产品化
  6. 首家A股云计算公司背后:黑客大神创办,2019上半年净利润下跌84%
  7. 北大电池新研究登上Nature:3万次循环测试,性能衰减不到30%,大幅提高锂空电池性能...
  8. 细思极恐!只需54块钱,你也能让AI伪造一系列联合国发言
  9. Nginx负载均衡与配置Nginx的ssl
  10. 大数据教程(10.6)自定义inputFormat(小文件合并)