linux下如何进行打包?下面我们就通过rpmbuild进行这些操作,将需要编译安装的包打车rpm的报。
一、安装rpmbuild包
1
|
$ sudo yum install -y rpm-build
|
二、初始化打包目录
1
2
3
|
$ cd /export
$ sudo mkdir -p rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS}
$ sudo chown -R $( whoami ): rpmbuild
|
三、准备spec文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
%define name xxx
%define version xxx
%define release 0
Namese: %{name}
Version: %{version}
Release: %{release}%{?dist}
Summary: xxxx
Group:
License:
URL:
Source0: xxx-{version}. tar .gz
#BuildRoot: %{buildroot}/%{name}–%{version}–%{release}-root-%(%{__id_u} -n)
Autoreq: no
#Patch0:
#BuildArch:
BuildRequires:
Requires:
%description
%prep
%setup -q
#%patch0 -p1
. /configure
%build
make -j4
% install
rm -fr $RPM_BUILD_ROOT
make install DESTDIR=${RPM_BUILD_ROOT}
make install -world DESTDIR=${RPM_BUILD_ROOT}
%post
%postun
%clean
rm -fr $RPM_BUILD_ROOT
%files
%defattr(-,root,root,-)
|
四、打包
先配置变量方便以后的使用:
1
2
3
4
|
$ sudo vim /etc/profile .d /rpmbuild .sh
#!/bin/env bash
alias rpmbuild= 'rpmbuild --define "_topdir /data/rpmbuild" -bb'
$ sudo source /etc/profile .d /rpmbuild .sh
|
打包就只需要执行:
1
|
$ rpmbuild path /xxx .spec
|
五、~/.rpmmacros
1
2
3
4
|
%_topdir %( echo $HOME) /rpmbuild
%_tmppath %{_topdir} /tmp
%buildroot %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
%_rpmfilename %%{NAME}-%%{VERSION}-%%{RELEASE}.%%{ARCH}.rpm
|
如果想深入体验LINUX系统的新手,也可以先下载一个方德Linux软件中心试用一下。
免费下载地址: