在很多时候我们需要自定义软件的特性,这时就需要用到源码安装。那么,网上有很多编译源码的工具,那么,我们怎么知道别人使用的是什么工具呢。其实我也不知道(*^▽^*)。
那么本篇博客主要是写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-PACKAGESome influential environment variables: 可能会影响环境变量的东东
第二步:执行”make“命令
第三步:执行“make install”
到这里我们就可以启用了,现在到我们安装路径下去启动(因为我们还没有对程序进行配置)
这里就简单的启动一下吧
到我们安装位置,执行启动命令:如 ./apachectl start
第四步:安装成功后的配置选项:
(1)导出二进制程序目录至PATH环境变量中,【如果不导出的话我们只能够使用绝对路径访问他】 编辑配置文件: /etc/profile.d/NAME.sh 创建一个脚本文件 在里面添加环境变量:export PATH=/PATH/TO/BIN:$PATH (2)导出库文件路径 (3)导出头文件 |
原文地址:https://www.cnblogs.com/l75790/p/9161638.html