【发布时间】:2020-06-26 06:08:54
【问题描述】:
我被要求创建包含 Python 代码的 git repo 的 RPM,并且 repo 是使用 python 的虚拟环境安装的。 virtal env 的代码在该仓库中。我的 rpm 已成功创建,但在使用 rpm -ivh 提取 RPM 时出错。虚拟环境目录中的文件与 rpm 提取冲突。我在下面发布错误和我的规范文件。任何方向的帮助将不胜感激。
提前致谢。
RPM spec file
Name: xyz
Version: 1.0
Release: 0
License: GPL
Source: %{name}-%{version}.tar.gz
Prefix: %{_prefix}
Packager: abc
BuildRoot: %{_tmppath}/%{name}-root
%description
rpm
%prep
rm -rf %{_topdir}/BUILD/*
%setup -n xyz
%build
%install
cp -rfa * %{buildroot}
%clean
#rm -rf %{buildroot}
rm -rf $RPM_BUILD_ROOT
%files
/*
%changelog
* Tue Oct 24 2017 abc 1.0.0
在这个文件的 % prep 部分下,您可能会注意到宏“%setup -q -n %{name}-%{version}”。该宏在后台执行以下命令。
错误:
file /lib/python2.7/site-packages/setuptools/site-patch.pyc from install of abc conflicts with file from package python-setuptools-0.9.8-7.el7.noarch
file /lib/python2.7/site-packages/setuptools/site-patch.pyo from install of abc conflicts with file from package python-setuptools-0.9.8-7.el7.noarch
file /lib/python2.7/site-packages/setuptools/ssl\_support.py from install of abc conflicts with file from package python-setuptools-0.9.8-7.el7.noarch
file /lib/python2.7/site-packages/setuptools/ssl\_support.pyc from install of abc conflicts with file from package python-setuptools-0.9.8-7.el7.noarch
file /lib/python2.7/site-packages/setuptools/ssl\_support.pyo from install of abc con
【问题讨论】:
-
您应该将 virtualenv 安装在像
/opt/<app name>这样的目录中。您的%files部分应与此相对应。目前它是给你错误的那个,因为你正在打包整个构建根!必须具体说明打包的文件。 -
感谢您的建议。在文件部分添加文件后,我能够提取 RPM。
标签: python virtualenv rpm rpm-spec