linux rpm包的编译
有些软件包的特性是编译者选定的,如果编译未选定此特性,将无法使用。rpm包的版本落后于源码包。
因此需要定制安装,也就是手动编译安装。
编译需要编译环境。
编译的过程如下:
1.下载源码
2.执行 tar -xf
3.cd到源码文件夹内
4. ./configure
--prefix=/path/to/somewhere 指定软件安装路径
--sysconfdir=/path/to/configurefile_path 指定配置文件路径
这一步有两个目的:
检查用户选定的编译特性
检查编译环境
5.make (编译)
6. make install (安装)
7.修改环境变量PATH,以便能够识别此程序的二进制文件路径
修改/etc/profile文件或者在/etc/profile.d/目录下建立一个.sh为名称后缀的文件,在里面定义export PATH=&PATH:/PATH/TO/SOMEWHERE
8.默认情况下,系统搜索库文件的路径/lib,/usr/lib,如果要增添额外的搜寻路径,则在/etc/ld.so.conf.d/中创建以.conf为后缀名的文件,而后把要增添的路径名直接写至此文件中:
接着执行ldconfig命令重新搜索库文件
-v用来显示重新搜索库的过程,顺便就看见了系统中的库
9.头文件:
系统默认找头文件的地方:/usr/include
所以要增加头文件搜寻路径,使用链接进行:
两种方式
eg:
ln -s /user/local/tengine/include/* /usr/include(文件链接)
或者
ln -s /user/local/tengine/include/ /usr/include/tengine(目录链接)
10.man文件路径
安装好后的软件定的man文件在 --prefix 路径下的man目录,而系统到/usr/share/man找man文档
所以加入新的man文档可以这么做:
(1).man -M /PATH/TO/MAN_DIR COMMAND
(2).在 /etc/man.config中添加一条MANPATH
linux rpm包的编译的更多相关文章
- linux RPM包安装、更新、删除等操作命令简明总结, 如何查看yum安装的软件路径 ?
rpm -ivh package.rpm 安装一个rpm包rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告rpm -U package.rpm 更新一个 ...
- linux rpm包
rpm包,软件包,程序包,以.rpm结尾的包 我们刚开始安装的Linux系统是最小化安装(minimol),只安装系统,不安装不必要的软件包 刚开始vim,ifconfig,tree等命令都没有,当然 ...
- 《linux源代码包的编译安装》RHEL6
linux下源代码包的编译安装其实没那么复杂. 我是win7系统装的虚拟机,就简单说下: 举个简单的例子: http://www.openssl.org/ 这是openssl的官网,下载openssl ...
- MySQL5.6.36 linux rpm包安装配置文档
一.卸载自带mysql,删除MySQL的lib库,服务文件 [root@localhost ~]#rpm -qa|grep mysql qt-mysql-4.6.2-26.el6_4.x86_64 m ...
- l【linux】linux rpm包命名规范
RPM包的一般格式为:name-version-arch.rpmname-version-arch.src.rpm name:软件包名称.version:带有主.次和修订的软件包版本.arch:硬件平 ...
- Linux rpm包管理工具
1.什么是rpm包 是一种编译好的二进制软件包,安装速度快. 2.rpm包命名 el6:软件包用于在Red Hat 6.x, CentOS 6.x, and CloudLinux 6.x进行安装 el ...
- linux rpm包管理 yum管理
1. 软件包的管理 RPM的定义:RPM就是Red Hat Package Manger(红帽软件包管理工具)的缩写. RPM包不需要编译,本身就是二进制,而源码包需要先编译成系统识别的二进制文件,才 ...
- Linux rpm包安装不了
有时候会发现安装rpm包时会报错,解决办法: 到rpm包所在目录执行 createrepo -v ./ 这个命令 然后会生成一个repodate这个目录,然后在进行安装rpm就可以了!
- Linux rpm包安装MySQL数据库问题总结
1.安装包准备 2.按顺序安装以下安装包 一定要按顺序安装,因为前面的包是后面包的依赖 [root@iz2ze1bzpi3orra8lboxqiz mysql]# rpm -ivh Percona-S ...
随机推荐
- js删除cookie的方法
以上图片有两种方法,推荐第二种
- 在Eclipse中使用JUnit4进行单元测试(初级篇、中级篇、高级篇)
本文转载自以下 初级篇: http://blog.csdn.net/andycpp/article/details/1327147 中级篇: http://blog.csdn.net/andycpp/ ...
- getOutputStream() has already been called for this response的解决方法
1.问题描述:spring mvc中下载文件结束后,跳转到list页面,问题报上面的异常. 2.原因:写文件的时候response调用一次,在跳转的时候,spring调用ActionForward类中 ...
- Trie树学习
这几天在看Hadoop的排序,用到了有TotalSortPartition,其中用到了一种叫做trie树的数据结构,每次看到这种自己之前没有听过的数据结构就想去看一下原理,然后再网上看几篇博客,有时间 ...
- ajaxFileUpload 实现多文件上传(源码)
按照原ajaxFileUpload.js是不能多文件上传的.需要对源码进行修改:主要修改了fileElementId部分 具体参考 https://blog.csdn.net/itmyhome1990 ...
- Hibernate 中的DetachedCriteria。
今天看到项目中在Web层使用DetachedCriteria进行多条件查询操作,如果在web层做持久层操作,事物还存在吗?这是我第一反应,于是乎就去网上查资料了.结果发现即在web层,程序员使用Det ...
- 苹果mac shell 终端 命令行快捷键——行首行尾
ctrl+a //移到行首 ctrl+e //移到行尾 http://blog.csdn.net/hherima/article/details/47083739
- python pymysql安装
==================pymysql=================== 由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接MySQL需要安装 ...
- mysql如何监测是否命中索引?
使用执行计划. 什么是执行计划? EXPLAIN SELECT …… 变体: 1. EXPLAIN EXTENDED SELECT …… 将执行计划“反编译”成SELECT语句,运行SHOW WARN ...
- 我为什么选择采用node.js来做新一代的EasyDarwin RTSP开源流媒体服务器
在去年我们还未开始开发基于node.js的新版本EasyDarwin RTSP开源流媒体服务器的时候,我写了一篇博客<对EasyDarwin开源项目后续发展的思考:站在巨人的肩膀上再跳上另一个更 ...