一.源码编译安装概述
1.测试环境
1.由于rpm包在作者制作封装的时候已经把程序的一些特性设置好了,但是当有自己的需求时,需要运用程序的一些其他特性,就需要下载程序的源码手动进行编译安装,这次测试一下C代码程序包的编译安装方法。
2.这次测试使用的为centos 6.9的环境编译安装Apache
2.编译过程
1.编译过程:
testapp-version-release.src.rpm(源码)–>安装后,使用rebuild命令制作成二进制格式的rpm包,而后再进行安装
2.大致过程为:源代码–>预处理(预处理器)–>编译(编译器,gcc)–>汇编(汇编器)–>链接(链接器)–>执行二进制程序
3.C代码编译安装步骤
1.在多文件中:文件的代码之间,很可能存在跨文件依赖关系
1)C,C++:make(configure–>makefile.in–>makefile)
ps:使用项目管理工具make进行自动编译,汇编。但需要configure传递的参数及模板makefile.in生成makefile,及make项目管理器的配置文件后,方可自动进行编译,汇编。
2)java:maven
2.C代码编译安装的三个步骤:
第一步:./configure:
1)通过选项传递参数,指定启用特性,安装路径等;执行时会参考用户的指定参数及make.in模板文件生成配置文件makefile
2)检查依赖到的外部环境
第二步:make
1)根据makefile文件,构建应用程序
第三步:make install(直接执行即可)
1)将构建好的应用程序进行相关的整合
3.开发工具
1.autoconf:生成configure脚本
2.automake:生成makefile.in模板文件
ps:通过这两个开发工具生成make的配置文件makefile
ps:安装前查看install,readme
4.开源程序源代码的获取:
1)官方自建站点:apache.org(ASF托管服务),mariadb.org…
2)代码托管:SourceForge,Github.com,code.google.com
ps:c/c++使用gcc(GNU C Complier)编译器
4.编译C源代码
1.前提:提供开发工具及开发环境
1)开发工具:make,gcc等
2)开发环境:开发库,头文件(glibc:标准C库)
ps:通过包组提供开发组件,CentOS 6: “Development Tools”, “Server Platform Development”
2.执行编译过程:
第一步:configure系统编译安装环境检查脚本(选项可指定安装位置,指定启用的相关特性)
ps:- -help 获取其支持使用的选项