软件包管理之编译安装
编译安装:RPM。YUM
RPM:一键安装,方便,二进制程序,
1功能不齐全,功能杂余
2版本滞后
程序:源代码--编译--链接--运行
定制软件包:源代码编译安装应用程序
编译环境:linux中大部分都是c开发
gcc:GNU c complier
gcc-c++:
安装编译环境:yum -y group development tools
make:不是编译器。项目管理工具,按照makefile文件中的定义,去定义软件功能的先后顺序
automake:makefile.in(半成品)
autoconf:生成脚本文件,configure
执行编译安装的三个步骤:
1:获取源代码并解压:
#tar .xf xxx.tar.gz
#tar .xf xxx.tar.bz2
2:执行configure脚本(在源码目录中运行)
功能:1:检查应用程序所需编译环境,2:生成makefile文件
选项:--help查看脚本帮助信息
--prefix=path :定义软件安装路径
--sbin-path=PATH 定义软件的二进制程序
--conf-path=PATH:定义应用程序配置文件路径
--enable--xxxx:开启某项功能(软件支持该功能,但默认不安装)
--with--xxx:开启某项功能(软件支持该功能,但默认不安装)
--without-xxx:关闭某些功能(如应用程序支持该功能,不需要的时候)
--user=USER:指定应用程序执行的用户
--group=GROUP:指定应用程序执行的组
解决configure错误信息:
1:用without关闭这项功能
2:安装所需的环境,安装所需的devel包(eg:yum -y install openssl openssl-devel)
3:make:定义makefile,按照那种顺序去编译程序
-j n:多线程一起编译
4:make install:安装应用程序
编译安装完成后的工作:
1:添加应用程序的二进制程序到系统路径:系统查找:$PATH
1.1:为二进制程序做链接文件
#ln -s/user/local/tengine/sbin/* /usr/sbin(这是链接整个目录的文件)
#ln -s/user/local/tengine/sbin /usr/sbin/tengine
1.2:修改etc/profile文件
1.3:etc/profile.d/目录建立name.sh的文件
2:添加应用程序库文件到系统库文件路径:/usr/lib
2.1:为库文件做链接文件
2.2:etc/ld.so.conf.d/目录下建立app_name.conf把应用程序的库文件位置添加进去
ldconfig
-v:显示加载库文件过程
3:添加应用程序的头文件到系统头文件路径:系统头文件/user/include
3.1:为头文件做链接文件
4:添加应用程序的帮助信息
4.1:man命令 -M parh bin_name(二进制程序)指定帮助信息的位置
4.2:man配置文件:系统默认帮助/usr/share/man
centos6下/etc/man.conf,添加manpath【help_path】
centos7中:etc/man/man_db.conf添加:namepath_map[help_path]

浙公网安备 33010602011771号