方法一:以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. python's descriptor

    [python's descriptor] 1.实现了以下三个方法任意一个的,且作为成员变量存在的对象,就是descriptor. 1)object.__get__(self, instance, o ...

  2. linux系统文件属性详解

    一.文件信息 当创建一个文件的时候,系统保存了有关该文件的全部信息,包括: 文件的位置: 文件类型: 文件长度: 哪位用户拥有该文件,哪些用户可以访问该文件: 硬连接计数: 文件的修改时间: 文件的权 ...

  3. SVO详细解读

    SVO详细解读 极品巧克力 前言 接上一篇文章<深度滤波器详细解读>. SVO(Semi-Direct Monocular Visual Odometry)是苏黎世大学Scaramuzza ...

  4. [C++] printf pitfall

    printf pitfal l

  5. laravel @if

  6. Flask框架 之 信号

    Flask框架中的信号基于blinker,其主要就是让开发者可是在flask请求过程中定制一些用户行为. 安装 pip3 install blinker 内置信号 request_started = ...

  7. razor DisplayNameFor ViewModel为集合时显示列名的问题

    @{ViewModel nullModel = null; } @Html.DisplayNameFor(model => nullModel .FullName) https://stacko ...

  8. CodeForces 540B School Marks (贪心)

    题意:先给定5个数,n,  k, p, x, y.分别表示 一共有 n 个成绩,并且已经给定了 k 个,每门成绩 大于0 小于等于p,成绩总和小于等于x, 但中位数大于等于y.让你找出另外的n-k个成 ...

  9. 'for' loop initial declarations are only allo

    linux系统下的c编程与windows有所不同,如果你在用gcc编译代码的时候提示‘for’ loop initial declarations are only allowed in C99 mo ...

  10. css基础 引用方式 标签选择器 优先级 各式布局

    今天讲的css基础,了解了css即层叠式表,是美化网页,控制页面的样式. 样式表引进网页的3种方式1内联式,语法例子:<div style="width: 100px;height: ...