項目中要求將一個python腳本打包成rpm包,方便yum安裝,研究了一遍,把其中的過程記錄一下。python
#/usr/bin/env python #-*- coding=utf-8 -*- print 'this is test'
這個腳本運行結果一目瞭然。測試
經過pip命令安裝該組件:pip install pyinstallerui
pyinstaller -F test.py
將生成的dist目錄下生成的test文件打包爲test.tar文件this
安裝rpmbuild 組件及生成相關目錄code
yum install rpmdevtools yum install -y rpm-build rpmdev-setuptree
以上命令運行成功後會在當前用戶目錄下生成rpmbuild目錄,該目錄會包含如下子目錄ip
--BUILD #編譯以前,如解壓包後存放的路徑
--BUILDROOT #編譯後存放的路徑
--RPMS #打包完成後rpm包存放的路徑
--SOURCES #源包所放置的路徑
--SPECS #spec文檔放置的路徑
--SPRMS #源碼rpm包放置的路徑utf-8
將3步驟生成的test.tar 文件考入SOURCES目錄,編輯test.spec文件文檔
Name:test Version:1.0 Release:0%{?dist} Summary: test Group:test License:GPL Source0:test.tar BuildRoot:%(mktemp -ud %{_tmppath}/%{name}-%{version}-%{release}-XXXXXX) %description -l zh_CN "the tools for test" %prep %setup -c -n test %install mkdir -p %{buildroot}/%{_usr}/bin install test %{buildroot}/%{_usr}/bin/test1.0 %files %doc /%{_usr}/bin/test1.0
該文件中具體的含義後續會有文章具體解釋。部署
運行命令源碼
rpmbuild -ba SPECS/test.spec
命令成功後會在RPMS目錄中生成相應的rpm包