共计 1123 个字符,预计需要花费 3 分钟才能阅读完成。
程序包编译安装:
Application-VERSION-release.src.rpm–> 安装后,使用 rpmbuild 命令制作成二进制格式的 rpm 包,而后再安装
源代码 –> 预处理 –> 编译 –> 汇编 –> 链接 –> 执行
源代码组织格式:
多文件:文件中的代码之间,很可能存在跨文件依赖关系
C、C++:make 项目管理器
configure –> Makefile.in –>
makefile
java: maven
C 语言源代码编译安装三步骤:
1、./configure
(1) 通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及 makefile.in 文件生成makefile
(2) 检查依赖到的外部环境,如依赖的软件包
2、make 根据 makefile 文件,构建应用程序
3、make install 复制文件到相应路径
开发工具:
autoconf: 生成 configure 脚本
automake:生成Makefile.in
注意:安装前查看INSTALL,README
开源程序源代码的获取:
官方自建站点:
apache.org (ASF:Apache Software Foundation)
mariadb.org …
代码托管:
SourceForge.net
Github.com
code.google.com
c/c++ 编译器: gcc(GNU C Complier)
第一步:configure脚本
选项:指定安装位置、指定启用的特性
–help: 获取其支持使用的选项
选项分类:
安装路径设定:
–prefix=/PATH: 指定默认安装位置 , 默认为/usr/local/
–sysconfdir=/PATH:配置文件安装位置
System types:支持交叉编译
Optional Features: 可选特性
–disable-FEATURE
–enable-FEATURE[=ARG]
Optional Packages: 可选包
–with-PACKAGE[=ARG],依赖包
–without-PACKAGE,禁用依赖关系
第二步:make
第三步:make
install
安装后的配置:
(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|man_db.conf 文件
添加一个 MANPATH