方法一:以setarch-1.3-1.src.rpm 软件包为例(可以到CSDN http://download.csdn.net/source/215173#acomment下载

假设该文件已经存在于/usr/local/src/下。在该目录下执行rpmbuild --rebuild --clean setarch-1.3-1.src.rpm

若顺利执行成功则会在/usr/src/redhat/RPMS/i386/目录下生成setarch-1.3-1.i386.rpm这个rpm文件。

接下来就是rpm的安装过程。

方法二:

(1)rpm –ivh setarch-1.3-1.src.rpm 执行rpm安装命令
(2)cd /usr/src/redhat/SPECS 切换目录到/usr/src/redhat/SPECS (src.rpm包默认的解压目录)
(3)rpmbuild –bp setarch-1.3-1e.spec 执行rpmbuild会生成源码包
(4)cd /usr/src/redhat/BUILD/setarch-1.3-1 切换到生成的源码包
(5)./configure 编译配置
(6)make 编译
(7)make install 安装

方法三:
(1)rpm –ivh setarch-1.3-1.src.rpm
(2)cd /usr/src/redhat/SPECS
(3)rpmbuild –bb setarch-1.3-1.spec
执行rpmbuild操作,会在/usr/src/redhat/RPMS/i386(不同的包,产生的路径不相同,可能会是i686、noarch等)下创建一个或多个的rpm包
(4)rpm –ivh /usr/src/redhat/RPMS/i386/setarch-1.3-1.rpm

注:当执行rpmbuild –bb setarch-1.3-1.spec 出现错误时,例:Error: Architecture is not included : i386,此错误表示该软件包不支持i386平台(默认的rpmbuild为i386平台),需指定到别的平台,指定参数为--target=i686
rpmbuild –bb –target=i686 setarch-1.3-1.spec

i386软件包可以在任何x86平台下使用,无论是i686还是x86_64的机器;而i686的软件包一般都对cpu进行了优化,具有向后的兼容性,不具有向前的兼容性。

转自:http://www.cnblogs.com/einyboy/archive/2012/09/13/2683015.html

[转] Linux 安装.src.rpm源码包的方法的更多相关文章

  1. Linux 系统下用源码包安装软件

    Linux系统下用源码包安装软件 by:授客 QQ:1033553122 下载源码安装包,解压或者直接双击打开(如果有安装zip或rar等压缩/解压缩软件的话),查找相关的安装说明文件,一般是READ ...

  2. linux软件管理之源码包管理

    源码包管理tarball ====================================================================================tar ...

  3. linux下获取软件源码包 centos/redhat, debian/ubuntu

    linux下获取软件源码包 centos/redhat, debian/ubuntu centos下: 1. yum install yum-utils 主要为了获取yumdownloader 2. ...

  4. linux学习笔记-lrmi源码包的编译安装方法

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 官方的lrmi包没有人更新了,如果碰到需要这个编译安装这个包,可以参考我的解决思路,如下: https://pkgs.org/这 ...

  5. linux 软件包安装方式选择、安装位置、源码包安装

    对外提供服务,比如apache,应使用源码包安装对内提供服务,比如gcc,只是我自己使用,使用rpm包安装 rpm包不需要指定安装位置,源码包的安装需要手动指定安装位置 rpm包默认安装位置/etc/ ...

  6. Linux系列教程(十三)——Linux软件包管理之源码包、脚本安装包

    上篇博客我们讲解了网络yum源和光盘yum源的搭建步骤,然后详细介绍了相关的yum命令,yum 最重要是解决了软件包依赖性问题.在安装软件时,我们使用yum命令将会简单方便很多.我们知道yum命令只能 ...

  7. Linux软件包管理之源码包、脚本安装包

    目录 1.源码包和RPM包的区别 RPM包和源码包默认安装位置: 由于安装位置不同带来的影响 2.源码包安装 ①.安装准备 ②.安装注意事项 ③.安装源码包 3.源码包卸载 4.脚本安装包 5.总结 ...

  8. Linux 安装node.js ---- 源码编译的方式

    一 : 普通用户: 安装前准备环境: 1.检查Linux 版本 命令: cat /etc/redhat-release 2.检查 gcc.gcc-c++ 是否安装过 命令: rpm -q gcc rp ...

  9. linux 解压,源码包

    从网络上下载到的源码包, 最常见的是 .tar.gz 包, 还有一部分是 .tar.bz2包   要解压很简单 :   .tar.gz     格式解压为          tar   -zxvf   ...

随机推荐

  1. c# vs c++

    [c# vs c++] 1.在 C++ 中,类和结构实际上是相同的,而在 C# 中,它们很不一样.C# 类可以实现任意数量的接口,但只能从一个基类继承.而且,C# Struct不支持继承,也不支持显式 ...

  2. Openssl gendsa命令

    一.简介 gendsa命令能够根据DSA密钥参数生成DSA密钥 二.语法 openssl gendsa [-out filename] [-passout out] [-rand file(s)] [ ...

  3. code2800 送外卖

    首先,对图进行一次Floyd(g[][]是图) 1.dfs:(u是当前在的节点,d是已经走的路程) void dfs(int u,int d){ if(d>=ans)return; bool f ...

  4. Django框架 之 信号

    Django中提供了“信号调度”,用于在框架执行操作时解耦.通俗来讲,就是一些动作发生的时候,信号允许特定的发送者去提醒一些接受者. Django内置信号 Model signals pre_init ...

  5. Firefox 43无法安装xpi的问题

    Firefox 43无法安装xpi的问题 说明:Firefox 42将默认禁止安装未签名扩展   强制禁用这个首选项(高级用户): 你可以在 Firefox 配置编辑页面 (about:config ...

  6. HttpUploader6-queue版本更新说明

    HttpUploader6-queue版本更新说明 博客园:http://www.cnblogs.com/xproer/p/5109761.html 网易博客:http://hyhyo.blog.16 ...

  7. iOS Programming Recipe 6: Creating a custom UIView using a Nib

    iOS Programming Recipe 6: Creating a custom UIView using a Nib JANUARY 7, 2013 BY MIKETT 12 COMMENTS ...

  8. 编写高质量代码改善C#程序的157个建议——建议110:用类来代替enum

    建议110:用类来代替enum 枚举(enum)用来表示一组固定的值.例如,为了表示星期信息,我们可以定义枚举Week: enum Week { Monday, Tuesday, Wednesday, ...

  9. 测试驱动开发 VS 行为驱动开发

    测试驱动开发(Test Driven Development,英文缩写TDD)是极限编程的一个重要组成部分,它的基本思想就是在开发功能代码之前,先编写测试代码.也就是说在明确要开发某个功能后,首先思考 ...

  10. Grails项目开发——前端请求跨域问题

    Grails项目开发--前端请求跨域问题 最近做项目采用前后端分离的思想,使用Grails作为后台开发Restful API供前端调用. 在项目开发的过程中,遇到前端没办法通过ajax访问到后台接口的 ...