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/moying-wq/p/10662427.html

时间: 2024-10-05 05:01:46

Linux源码编译安装程序的相关文章

linux源码编译安装php出现 cannot find -lltdl

原因: 在编辑php时添加的“–with-mcrypt”选项造成. 解决方法: 1.如果不需要mcrypt,那么编辑php时去掉该选项,然后再make.make install. 2.如果需要mcrypt,那么需要安装libltdl libltdl在libmcrypt软件包中就有,具体过程: #cd /software/libmcrypt-2.5.8/libltdl #./configure –enable-ltdl-install #make #make install 这个时候再回到php的

源码编译安装程序包及httpd源码安装实践

源码编译安装程序包从步骤并不复杂,实际安装过程中最主要的就是准备好编译环境:根据自己的实际需求,选择或设置程序包编译参数:以及程序包安装后的相关配置. 1.  编译环境准备 以CentOS6为例,一般通过yum安装2个包组,编译工具,以及编译程序包依赖的主要的头文件和库文件就都准备好了. # yum groupinstall "Development Tools" # yum groupinstall "Server Platform Development" 另外

linux源码编译安装OpenCV

为了尽可能保证OpenCV的特性,使用OpenCV源码编译安装在linux上.先从安装其依赖项开始,以ubuntu 14.04.X为例讲解在Linux上源码编译安装OpenCV,其他linux版本可以类比安装.此文针对,有一点Linux常识(会使用终端)的读者. 源代码准备 如果不想在安装过程中,一步步的下载.编译.安装,可以先一次性下载完需要用到的源代码. X264: ftp://ftp.videolan.org/pub/videolan/x264/snapshots/ FFMPEG: htt

Linux 源码编译安装 MySQL 5.5.x

Linux 环境:CentOS 6.5 MySQL 版本:5.5.20,附下载地址:[点击下载] 1.安装cmake MySQL从5.5版本开始,通过./configure进行编译配置方式已经被取消,取而代之的是cmake工具. 因此,我们首先要在系统中源码编译安装cmake工具. 下载 cmake [[email protected] soft]# wget http://www.cmake.org/files/v2.8/cmake-2.8.4.tar.gz 解压 [[email protec

Linux源码编译安装和卸载

Linux下正常的编译安装/卸载 源码的安装一般由3个步骤组成: 配置(configure) 编译(make) 安装(make install). configure文件是一个可执行的脚本文件,它有很多选项,在待安装的源码目录下使用命令./configure –help可以输出详细的选项列表. 其中--prefix选项是配置安装目录,如果不配置该选项,安装后可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc,

SUSE Linux源码编译安装MySQL 5.6

这篇文章主要介绍了SUSE Linux下源码编译方式安装MySQL 5.6过程分享,本文使用SUSE Linux Enterprise Server 10 SP3 (x86_64)系统,需要的朋友可以参考下.MySQL为开源数据库,因此可以基于源码实现安装.基于源码安装有更多的灵活性.也就是说我们可以针对自己的硬件平台选用合适的编译器来优化编译后的二进制代码,根据不同的软件平台环境调整相关的编译参数,选择自身需要选择不同的安装组件,设定需要的字符集等等一些可以根据特定应用场景所作的各种调整.本文

Linux下源码编译安装程序

一.程序的组成部分 Linux下程序大都是由以下几部分组成:     二进制文件:也就是可以运行的程序文件     库文件:就是通常我们见到的lib目录下的文件     配置文件:这个不必多说,都知道     帮助文档:通常是我们在linux下用man命令查看的命令的文档 二.linux下程序的存放目录     linux程序的存放目录大致有三个地方:     /etc, /bin, /sbin, /lib  :系统启动就需要用到的程序,这些目录不能挂载额外的分区,必须在根文件系统的分区上   

如何实现源码编译安装程序

1.问题:发行商提供的rpm包不想用,别人提供的rpm包也不想用,那么只能自己编译源码制作rpm包. 不是不想用,而是别人提供的不能满足最大优化,所以需要自己编译定制. 2.源码语言类型:c,c++,perl,python等,最常见的为c 3.开源代码站点: http://sourceforge.net/ https://github.com/ https://code.google.com/ 4.源码要满足编译安装,开发者开发的源码必须完成如下事件项: A. autoconf:configur

Linux 源码编译安装curl

系统环境:Ubuntu 环境编译安装curl 开始编译安装 [email protected]:~$ mkdir curl [email protected]:~$ cd curl/ [email protected]:~/curl$ tar xf curl-7.51.0.tar.gz  [email protected]:~/curl$ cd curl-7.51.0/ [email protected]:~/curl/curl-7.51.0$  [email protected]:~/curl