分类: LINUX
2012-11-18 10:46:55
請將前一章你曾經處理過的 main.tgz 再次的捉下來一次,我們將這個檔案放置到 /root 底下, 並且在 /usr/local/src 底下建立一個名為 main-0.1 的目錄來解壓縮喔!
[root@www ~]# mkdir /usr/local/src/main-0.1
[root@www ~]# tar -zxvf main.tgz -C /usr/local/src/main-0.1
[root@www ~]# cd /usr/local/src/main-0.1
[root@www main-0.1]# vim Makefile <==建立原始碼所需 make 規則
LIBS = -lm
OBJS = main.o haha.o sin_value.o cos_value.o
main: ${OBJS}
gcc -o main ${OBJS} ${LIBS}
clean:
rm -f main ${OBJS}
install:
install -m 755 main $(RPM_INSTALL_ROOT)/usr/local/bin/main
# 記得 gcc 與 rm 之前是使用 |
這個時候在 /usr/src/redhat 底下的原始碼就建立成功了!接下來就是 spec 檔案的建立囉!
這個檔案的建置是所有 RPM 製作裡面最重要的課題!你必須要仔細的設定他,不要隨便處理!仔細看看吧!
[root@www ~]# cd /usr/src/redhat/SPECS
[root@www SPECS]# vim main.spec
Summary: calculate sin and cos value.
Name: main
Version: 0.1
Release: 1
License: GPL
Group: VBird's Home
Source: main-0.1.tar.gz <==記得要寫正確的 Tarball 檔名喔!
Url:
Packager: VBird
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
%description
This package will let you input your name and calculate sin cos value.
%prep
%setup -q
%build
make
%install
rm -rf %{buildroot}
mkdir -p %{buildroot}/usr/local/bin
make install RPM_INSTALL_ROOT=%{buildroot} <==這項目也很重要!
%files
/usr/local/bin/main
%changelog
* Wed Jul 01 2009 VBird Tsai |
老實說,那個 spec 檔案建置妥當後,後續的動作就簡單的要命了!開始來編譯吧!
[root@www SPECS]# rpmbuild -ba main.spec ....(前面省略).... 已寫入:/usr/src/redhat/SRPMS/main-0.1-1.src.rpm 已寫入:/usr/src/redhat/RPMS/i386/main-0.1-1.i386.rpm 已寫入:/usr/src/redhat/RPMS/i386/main-debuginfo-0.1-1.i386.rpm |