Linux软件管理之src源码安装编译

在很多时候我们需要自定义软件的特性,这时就需要用到源码安装。那么,网上有很多编译源码的工具,那么,我们怎么知道别人使用的是什么工具呢。其实我也不知道(*^▽^*)。

那么本篇博客主要是写C代码的源码安装。

什么都不说,直接先上来总结源码安装的四步骤:


第一步:./configure:    【当然,我们在这步骤之前还必须解压源码包】
     (1) 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及Makefile.in文件生成makefile
     (2) 检查依赖到的外部环境
第二步:make:
      根据makefile文件,构建应用程序;
第三步:make install

第四步:安装后的配置选项

【其实后两步很简单,重点是第一步和第四步】

上面只是小小的总结了一下,那么具体怎么实现的,GG

1、我们怎么去获取源码包


官方自建站点:
     apache.org (ASF)
     mariadb.org
                ...
代码托管:
     SourceForge
     Github.com
     code.google.com

2、就是一个大难题了,编译C源代码

前提:提供开发工具及开发环境
              开发工具:make, gcc等
              开发环境:开发库,头文件
                  glibc:标准库

通过“包组”提供开发组件
                    CentOS 6上面主要安装这两个开发包组件: "Development Tools", "Server Platform Development"

第一步:configure脚本

我们必须要提供一些参数给脚本:如指定安装位置、指定启用特性等,这时我们可以使用命令: ./configure --help 来获取其支持使用的选项。

选项分类:
Configuration:

Installation directories: 安装路径设定

--prefix=/PATH/TO/SOMEWHERE: 指定默认安装位置;默认为/usr/local/
    --sysconfdir=/PATH/TO/SOMEWHERE:配置文件安装位置;

System types: 目标系统平台结构  【注意:只有在交叉编译的时候才用到该选项】

Optional Features: 可选性

--disable-FEATURE
    --enable-FEATURE[=ARG]

Optional Packages: 依赖到的程序包,是定义依赖关系的

--with-PACKAGE[=ARG]
    --without-PACKAGE

Some influential environment variables: 可能会影响环境变量的东东

第二步:执行”make“命令

第三步:执行“make install”

到这里我们就可以启用了,现在到我们安装路径下去启动(因为我们还没有对程序进行配置)
 这里就简单的启动一下吧
      到我们安装位置,执行启动命令:如  ./apachectl start

第四步:安装成功后的配置选项:

(1)导出二进制程序目录至PATH环境变量中,【如果不导出的话我们只能够使用绝对路径访问他】
       编辑配置文件: /etc/profile.d/NAME.sh    创建一个脚本文件
                                在里面添加环境变量:export PATH=/PATH/TO/BIN:$PATH

(2)导出库文件路径
       编辑 /etc/ld.so.conf.d/NAME.conf       创建一个配置文件,添加新的库文件所在目录至此文件中
          让系统重新生成缓存: 命令:ldconfig [-v]

(3)导出头文件
        方法一:去安装目录下,把include头文件复制到/usr/include目录下
        方法二:基于链接的方式实现
            ln -sv 源文件  软连接文件
(4)导出帮助手册
        编辑 /etc/man..config 文件, 在里面添加一个MANPATH参数并指明路径就行了

原文地址:https://www.cnblogs.com/l75790/p/9161638.html

时间: 2024-10-11 04:49:03

Linux软件管理之src源码安装编译的相关文章

linux下MySQL 5.6源码安装

linux下MySQL 5.6源码安装 1.下载:当前mysql版本到了5.6.20 http://dev.mysql.com/downloads/mysql 选择Source Code 2.必要软件包 yum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake 3.编译安装 添加用户 groupad

Linux软件包管理{rpm|yum|源码包}2015082901

CentOS软件包管理 Linux程序安装有三种方式: 1.  二进制包安装 a.RPM b.YUM 2.  源码包安装 (1)二进制包管理: RPM CentOS上的二进制包为rpm格式,并且rpm软件包管理程序也叫做rpm(RPM is Package Manager) RPM包管理方式的优点是:安装简单方便,因为软件已经编译完成打包完毕,安装只是个验证环境和解压的过程.此外通过RPM方式安装的软件,RPM工具都会记录软件的安装信息至数据库中(/var/lib/rpm),这样方便了软件日后的

Linux中centos中httpd源码安装过程详解

在Linux中软件安装有两大类,一类是软件包安装,一类是源代码安装.软件包安装就是指将编译好的二进制封装成rpm包,可以直接使用rpm工具和yum工具安装.源代码安装是指没有编译成二进制,需要通过手动编译的.使用源代码安装的原因有两个,一个就是想使用最新版的软件,另一类就是想自定义其功能的. 在httpd的源码安装过程中需要用到:APR.APR-UTIL. PCRE.httpd源码安装过程:1.展开压缩文件,把压缩文件解压缩到/usr/local/src.2.在解压文件目录使用 ./config

linux服务之Lamp的源码安装(centos)

Linux+Apache+Mysql+Php源码安装 一.安装环境: 系统:Centos6.5x64 Apache: httpd-2.4.10.tar.gz Mysql: mysql-5.6.20-linux-glibc2.5-x86_64.tar.gz Php: php-5.6.0.tar.gz Apr: apr-1.5.1.tar.gz Apr-util: apr-util-1.5.3.tar.gz Libxml2: libxml2-2.9.1.tar.gz 默认安装路径我们统一安装到/us

linux下使用qq————pidgin-lwqq 源码安装详细教程

今天费了不少功夫终于安装了pidgin——lwqq,可以在linux上使用qq了lwqq是在linux下通讯工具pidgin上使之支持webqq协议的组件下面来详细介绍一下安装方法,共介绍两种,通过apt-get工具和通过源码安装(针对ubuntu和debian用户) 要安装pidgin-lwqq首先要安装lwqq,这两个组件已经被分开 首先我们来安装lwqq 先是lwqq依赖的库的安装使用apt-get命令可以 $ sudo apt-get install build-essential cm

Linux下源码安装编译mysql数据库

MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理. 下面是mysql数据库源码安装的具体步骤: 环境:redhat6.5 所需要的包:mysql-boost-5.7.11.tar.gz cmake-2.8.12.2-4.el6.x86_64.rpm         #要求cmake版本2.8及其以上 ##########mysql############ 下载安装包并进行解压缩: mysql-

【转】linux环境下python的源码安装

[转载: http://www.cnblogs.com/yuechaotian/archive/2013/06/03/3115482.html] [问题] 在编译Sequoiadb的Python驱动源码的过程中,出现:Python.h不存在的问题.经求证,Python.h文件只在python的源码安装中存在,而在一般的二进制安装中则不存在. 1. 下载python2.7.5,保存到 /data/qtongmon/software wget https://www.python.org/ftp/p

yum方式软件管理及进阶源码编译安装

1. yum简介2. yum组成结构3. yum配置使用4. yum命令详解5. yum源变量6. yum仓库创建7.进阶源码编译安装 1. yum简介YUM: Yellowdog Updater Modifed, 是由Duke University团队修改Yellow Dog Linux的Yellow Dog Updater开发而来的,是一个基于RPM包管理器的字符前端软件管理器(依赖于RPM包).能够从指定的服务器自动下载RPM包并且安装,可以处理RPM包的依赖关系,并且一次安装所有依赖的软

RedHat系列软件管理(第二版) --源码包安装

RedHat系列软件管理 --源码包安装 源码包特点: 拥有广泛的平台支持性,可以装在所有的类UNIX操作系统上,不用考虑CPU架构. 灵活性,可以在安装过程中指定特有的选项. 定制度非常高,可以自己去修改源代码.像大企业对性能,应用,配置要求很高的话,推荐使用源代码包! *安装过程非常透明,有利于学习. 1.tar -zxvf proftpd-1.3.5.tar.gz  #解压解包 2.cd proftpd-1.3.5 #进入目录 3../configure #配置,执行configure可执