RPM打包之spec示例

示例来源于rpmbuild官网:https://rpmbuildtut.wordpress.com/development-packages/

vpython 的一个依赖包,gtkglarea,的spec文件(粗体部分为构建Development包时的内容):

Name: gtkglarea
Version: 1.2.3
Release: 1%{?dist}
Summary: Gtkglarea is an opengl wigdet for the gtk+ gui toolkit

Group: Development/Libraries
License: GPLv2+
URL: http://www.bradlongo.wordpress.com
Source0: gtkglarea-1.2.3.tar.gz
Patch0:gtkglarea.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)

BuildRequires: gtk±devel >= 1.2
Requires: gtk+ >= 1.2

%description
Gtkglarea is an opengl widget similar to the GtkDrawingArea.

%package devel
Group: Development/Libraries
Summary: Development files for gtkglarea
Requires: gtkglarea == 1.2.3

%description devel
Development files for gtkglarea.

%post -p /sbin/ldconfig

%prep
%setup -q
%patch0 -p1

%build
%configure
make %{?_smp_mflags}

%install
rm -rf R P M B U I L D R O O T m a k e i n s t a l l D E S T D I R = RPM_BUILD_ROOT make install DESTDIR= RPMBUILDROOTmakeinstallDESTDIR=RPM_BUILD_ROOT
rm -f %{_libdir}/libgtkgl.la
rm -f $RPM_BUILD_ROOT/%{_libdir}/libgtkgl.la
%postun -p /sbin/ldconfig

%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root,-)
%doc COPYING
%doc README
%doc INSTALL
%doc AUTHORS
%{_libdir}/libgtkgl.so.5
%{_libdir}/libgtkgl.so.5.0.0
%{_datadir}/aclocal/gtkgl.m4

%files devel
%defattr(-,root,root,-)
%doc COPYING
%doc README
%doc INSTALL
%doc AUTHORS
%{_includedir}/gtkgl/gdkgl.h
%{_includedir}/gtkgl/gtkglarea.h
%{_libdir}/libgtkgl.so
%{_libdir}/libgtkgl.a

%changelog
*Sun Jul 13 2008 Brad Longo bjlongo@ncsu.edu 1.2.3-1
–Fixed files section
–Deleted zero length file.
–Created patch to get rid of rpmlint errors.

*Thu Jun 26 2008 Brad Longo bjlongo@ncsu.edu 1.2.3-1
–Initial Build.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Linux RPM(Red Hat Package Manager)是一种常见的软件包管理工具,可以方便地安装、升级、卸载软件包。下面是使用 RPM 打包的基本步骤: 1. 准备打包文件 将需要打包的文件放在同一个目录下,并确保目录结构正确。 2. 创建 spec 文件 spec 文件是 RPM 打包的核心文件,它包含了软件包的相关信息,如软件名称、版本号、依赖关系等。可以使用文本编辑器创建 spec 文件,命名为 software.spec,其 software 为软件包名称。 3. 编写 spec 文件 spec 文件格式比较复杂,需要按照规范编写。以下是一个简单的示例: ``` Name: software Version: 1.0 Release: 1 Summary: A brief summary of the software License: GPL Group: Applications/Tools Source0: software.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-root %description A detailed description of the software. %prep %setup -q %build ./configure make %install make install DESTDIR=%{buildroot} %clean rm -rf %{buildroot} %files %defattr(-,root,root,-) /usr/local/bin/software %doc README %changelog ``` 其,Name、Version、Release、Summary、License、Group、Source0 等字段需要根据实际情况填写,%description、%files、%doc、%changelog 等字段可以根据需求添加或删除。 4. 执行 rpmbuild 命令 执行以下命令进行打包: ``` $ rpmbuild -bb software.spec ``` 其,-bb 表示打包并构建二进制 RPM 包。如果一切顺利,RPM 包将生成在 /usr/src/redhat/RPMS 目录下。 以上是 RPM 打包的基本步骤,更多细节请参考 RPM 手册。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值