python程序打包rpm包


python程序及其依賴包打包成rpm包部署

項目中要求將一個python腳本打包成rpm包,方便yum安裝,研究了一遍,把其中的過程記錄一下。

1.首先一個簡單測試腳本
#/usr/bin/env python
#-*- coding=utf-8 -*-
print 'this is test'

這個腳本運行結果一目了然。

2.安裝pyinstaller

通過pip命令安裝該組件:pip install pyinstaller

3.通過pyinstaller打包腳本及其依賴
pyinstaller -F test.py

將生成的dist目錄下生成的test文件打包為test.tar文件

4.使用 rpmbuild 制作成rpm 包

安裝rpmbuild 組件及生成相關目錄

yum install rpmdevtools
yum install -y rpm-build
rpmdev-setuptree

以上命令運行成功后會在當前用戶目錄下生成rpmbuild目錄,該目錄會包含以下子目錄

--BUILD #編譯之前,如解壓包后存放的路徑
--BUILDROOT #編譯后存放的路徑
--RPMS #打包完成后rpm包存放的路徑
--SOURCES #源包所放置的路徑
--SPECS #spec文檔放置的路徑
--SPRMS #源碼rpm包放置的路徑

將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包


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM