zoukankan      html  css  js  c++  java
  • 使用rpmbuild制作rpm包

    使用rpmbuild制作rpm包

    这里以制作cmake-3.15.5为例,首先保证环境中安装有rpmbuild,其次下载cmake-3.15.5.tar.gz源代码包。

    1.  在/root目录下生成rpmbuild目录

    mkdir -p ~/rpmbuild/BUILD ~/rpmbuild/RPMS ~/rpmbuild/BUILDROOT ~/rpmbuild/SRPMS ~/rpmbuild/SOURCES ~/rpmbuild/SPECS

    2.  vi ~/rpmbuild/SPECS/cmake.spec 自动生成spec模板文件,并填写相关字段,现给出我的spec文件

    #
    # spec file for package cmake
    #
    # Copyright (c) 2020 SUSE LINUX Products GmbH, Nuernberg, Germany.
    #
    # All modifications and additions to the file contributed by third parties
    # remain the property of their copyright owners, unless otherwise agreed
    # upon. The license for this file, and modifications and additions to the
    # file, is the same license as for the pristine package itself (unless the
    # license for the pristine package is not an Open Source License, in which
    # case the license is the MIT License). An "Open Source License" is a
    # license that conforms to the Open Source Definition (Version 1.9)
    # published by the Open Source Initiative.

    # Please submit bugfixes or comments via http://bugs.opensuse.org/
    #

    %define version 3.15.5
    %define directory /usr/local

    Name: cmake
    Version: %{version}
    Release: 1%{?dist}
    License: GPL
    Summary: cmake tools
    # Url:
    # Group:
    Source: cmake-3.15.5.tar.gz
    # Patch:
    # BuildRequires:
    # PreReq:
    # Provides:
    BuildRoot: %{_tmppath}/%{name}-%{version}-build

    %description

    %prep
    %setup -q

    %build
    ./configure --prefix=%{directory}
    make %{?_smp_mflags}

    %install
    make install DESTDIR=%{buildroot} %{?_smp_mflags}
    %pre

    %preun

    %post

    %postun

    %clean
    rm -rf %{buildroot}

    %files
    %defattr(-,root,root)
    %{directory}/doc
    %{directory}/bin
    %{directory}/share

    %changelog

    3.  执行 rpmbuild -ba ~/rpmbuild/SPECS/cmake.spec

    接下来是比较长的编译和安装过程,执行成功的界面如下:

     以 exit 0 退出表示没有出错,然后在~/rpmbuild/RPMS/目录下可以看到形成了x86_64目录,该目录下有cmake-3.15.5-1.x86_64.rpm安装包:

     在~/rpmbuild/SRPMS/目录下形成了cmake-3.15.5-1.src.rpm安装包:

     到此,由源代码包制作rpm包的流程结束。

    4.  rpm -ivh ~/rpmbuild/RPM/x86_64/cmake-3.15.5-1.x86_64.rpm安装生成的rpm包:

     以上表示安装成功。

    5.  解析rpm包

    rpm –qpl *.rpm    # 列出rpm包包含的内容
    
    rpm2cpio *.rpm | cpio –div    # 解压rpm包
  • 相关阅读:
    Java实现 蓝桥杯VIP 算法训练 黑色星期五
    Java实现 蓝桥杯VIP 算法训练 比赛安排
    Java实现 蓝桥杯VIP 算法训练 比赛安排
    Java实现 蓝桥杯VIP 算法训练 斜率计算
    Java实现 蓝桥杯VIP 算法训练 斜率计算
    Java实现 蓝桥杯VIP 算法训练 整数平均值
    Java实现 蓝桥杯VIP 算法训练 整数平均值
    控件动态产生器(使用RegisterClasses提前进行注册)
    Delphi编写自定义控件以及接口的使用(做了一个TpgDbEdit)
    Log4delphi使用心得
  • 原文地址:https://www.cnblogs.com/tongyishu/p/12294523.html
Copyright © 2011-2022 走看看