本文解决了源代码安装都需要先检查系统上是否安装了应用程序所依赖的软件包的烦恼,对源代码开发者也有一定的帮助。可以在该基础上进行适当的修改,以满足自己的要求。

RedHat5 or CentOS5已经提供了制作RPM包的目录,可以直接把需要制作的RPM包的应用程序的源代码包放系统指定的目录,而不需要像在RedHat6(7)or CentOS6(7)上自己创建制作RPM包的目录。

1 添加普通用户

useradd redhat

passwd redhat

redhat

redhat

2 切换到普通用户redhat

su – redhat

3 在redhat的home目录下创建rpmbuild目录

mkdir –pv rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

4 把pgrpms项目(http://git.postgresql.org/gitweb/?p=pgrpms.git)克隆到本地

cd /opt

mkdir pgrpm

git clone git://git.postgresql.org/git/pgrpms.git

/opt/pgrpm/pgrpms

5 把pgrpms项目中与本地系统版本相对应目录中的文件复制到创建的SOURCE目录下

cp /opt/pgrpm/pgrpms/rpm/redhat/9.4/postgresql/EL-6/* /home/redhat/rpmbuild/SOURCE

cd /home/redhat/rpmbuild/SOURCE

cp postgresql-9.4.spec ../SPEC

6 下载PG9.4.5源码包与PG9.4.5的官方文档到/opt/soft_bak

postgresql-9.4.5.tar.bz2 postgresql-9.4-A4.pdf

7 把PG9.4.5源码包以及PG9.4.5的文档复制到/home/redhat/rpmbuild/SOURCE

目录下

8 安装PostgreSQL的依赖包

glibc-devel bison flex perl-ExtUtils-Embed per(ExtUtils::MakeMaker) python-devel tcl-devel readline-devel openssl-devel krb5-devel e2fsprogs-devel libxml2-devel libxslt-devel pam-devel libuuid-devel openldap-devel openjade opensp docbook-dtds

docbook-style-dsssl

9 开始打PG9.4.5二进制RPM包

(yum install –y rpm-build)

cd /home/redhat/rpmbuild/SPEC

rpmbuild –bb postgresql-9.4.spec

10 查看打好的RPM包

打好的RPM包存储在RPMS目录下

如何在RedHat6(7) or CentOS6(7)上制作无依赖的PostgreSQL数据库的RPM包的更多相关文章

  1. CentOS6.5 上crontab每天自动备份mysql数据库

    步骤: 1. sudo vi /etc/crontab  #编辑crontab任务 2.输入01 12 * * * root /usr/local/mysql/backup/backup.sh > ...

  2. Windows上Navicat工具远程连接PostgreSQL数据库

    首先,在pgdata(也就是在安装pg时指定的存放数据的文件见中)文件夹中,找到pg_hba.conf文件,在文件最后写入下面的内容: host all all 0.0.0.0/0 trust 接着, ...

  3. 最新版CentOS6.5上安装部署ASP.NET MVC4和WebApi

    最新版CentOS6.5上安装部署ASP.NET MVC4和WebApi 使用Jexus5.8.1独立版 http://www.linuxdot.net/ ps:该“独立版”支持64位的CentOS ...

  4. 如何在 ETL 项目中统一管理上百个 SSIS 包的日志和包配置框架

    一直准备写这么一篇有关 SSIS 日志系统的文章,但是发现很难一次写的很完整.因为这篇文章的内容可扩展的性太强,每多扩展一部分就意味着需要更多代码,示例和理论支撑.因此,我选择我觉得比较通用的 LOG ...

  5. CentOS6.5上golang环境配置

    CentOS6.5上golang环境配置 一.下载和解压go环境包 >>cd /usr/local/src/ >>wget -c http://golangtc.com/sta ...

  6. Centos6.6上安装mysql5.6中的一些典型问题

    经过两天的摸索,终于成功在CentOS6.6系统上成功安装了mysql5.6,现整理如下. (1)安装时的问题: 最小化安装后,安装rpm包时经常会遇到 linux/centos Header V3 ...

  7. aliyun CentOS6.5 上 svn 安装笔记

    为了方便管理自己的一些学习资料.总结等,在CentOS6.5上安装SVN,记录过程如下: 1.1  安装方式  独立服务器  fsfs SVN服务器有2种运行方式:独立安装.SVN+Apache.独立 ...

  8. CENTOS6.6上搭建单实例ORACLE12C

    本文来自我的github pages博客http://galengao.github.io/ 即www.gaohuirong.cn 摘要: 自己在centos6.6上搭建的单实例oracle12c 由 ...

  9. centos6.8上yum安装zabbix3.2

    centos6.8上yum安装zabbix3.2 zabbix3.2安装文档:https://www.zabbix.com/documentation/3.2/manual/installation/ ...

随机推荐

  1. Bootstrap页面布局11 - BS表单

    表单之 文本框 text <input type='text' value='' placeholder='输入您的用户名' class='input-mini' /> ①几个类控制文本框 ...

  2. Linux 关闭防火墙命令

    用linux自己来访问web是可以的 比如 192.168.2.20就可以访问本机的相关页面 用192.168.2.20/phpmyadmin就可以访问数据库相关内容 可是,当别的局域网的电脑想访问时 ...

  3. garbage collection - 垃圾收集

    Professional.JavaScript.for.Web.Developers.3rd.Edition.Jan.2012 JavaScript is a garbage-collected la ...

  4. Redis学习笔记(6)-SortedSet

    package cn.com; import java.util.HashMap; import java.util.Map; import java.util.Set; import redis.c ...

  5. iOS archive(归档)的总结 (序列化和反序列化,持久化到文件)

    http://www.cnblogs.com/ios8/p/ios-archive.html

  6. netstat 查看TCP状态值

    一.TCP 状态值 netstat -n | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' CLOSED:无连接是活动的或正在进行LI ...

  7. [LeetCode] Combinations (bfs bad、dfs 递归 accept)

    Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For exampl ...

  8. How to Move Magento to a New Server or Domain

    Magento is one of the fastest growing eCommerce platforms on the internet and with its recent acquis ...

  9. 删除Checkout with Multiple Addresses

    如果选择No,您的客户在结账时只可以输入一个收货地址,订单的货物都会送到这个地址.如果您选择Yes,您的客户将可以选择发货到多个地址,在购物车中的Proceed to Checkout按钮下面将会出现 ...

  10. Estimating Project Costs

    The Wideman Comparative Glossary of Common Project Management Terms describes estimating cost as, &q ...