|
33、程序包管理之四-编译安装
2021年09月17日 |
|
33.1 程序包编译安装流程 testapp-VERSION-release.src.rpmà安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装 源代码à预处理à编译(gcc)à汇编à链接à执行 33.2 源代码组织格式: 多文件:文件中的代码之间,很可能存在跨文件依赖关系; C,C++:make(configureàMakefile.inàmakefile) java:maven 33.3 编译安装三步骤 1、./configure: (1)通过选项传递参数,指定启用特性,安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile (2)检查依赖到的外部环境 2、make: 根据makefile文件,构建应用程序 3、makeinstall: 4、开发工具: autoconf:生成configure脚本 automake:生成Makefile.in 33.4 开源程序源代码的获取: 官方自建站点: apache.org(ASF) mariadb.org … 代码托管: SourceForge Github.com code.google.com C/C++:gcc(GNU C Complier) 33.5 编译C源代码: 1、前提:提供开发工具及开发环境 开发工具:make,gcc等, 开发环境:开发库,头文件 glibc:标准库 通过“包组”提供开发组件 CentOS6:“Development Tools”,“Server Platform Development” 2、配置步骤 第一步:configure脚本 选项:指定安装位置,指定启用的特性 –help:获取其支持使用的选项 选项分类: 安装路径设定: –prefix=/PATH/TO/SOMEWHERE:指定默认安装路径 –sysconfigdir=/PATH/TO/SOMEWHERE:配置文件安装位置 System types: Optional Features:可选特性 –disable-FEATURE –enable-FEATURE[=ARG] Optional Packages:可选包 –with-PACKAGE[=ARG] –without-PACKAGE 第二步:make 第三步:make install 3、安装后的配置: (1)导出二进制程序目录至PATH环境变量中; 编辑文件/etc/profile.d/NAME.sh export PATH=/PATH/TO/BIN:$PATH (2)导出库文件路径 编辑/etc/ld.so.conf.d/NAME.conf 添加新的库文件所在目录至此文件中 让系统重新生成缓存: ldconfig [-v] (3)导出头文件 基于链接的方式实现 ln -sv (4)导出帮助手册 编辑/etc/man.config文件 添加一个MANPATH 联系: 1、yum的配置和使用;包括yum repository的创建 2、编译安装apache 2.2;启动此服务; |