Python 2.7 CentOS 6.7、python distutils和brp python字节编译
我试图让python distutils为我构建一个RPM。这证明是非常困难的,thoPython 2.7 CentOS 6.7、python distutils和brp python字节编译,python-2.7,centos,rpm,Python 2.7,Centos,Rpm,我试图让python distutils为我构建一个RPM。这证明是非常困难的,tho 在我的mac上,一切正常,但在CentOS 6.7(我的CI服务器)上,由于RPM是为不同的平台构建的,所以一切正常。 在CentOS上,.py文件正在由rpm/brp python字节编译进行预编译。这将创建.pyc和.pyo文件,这些文件未在bdist\u rpm中列出,因此我得到一个错误 我找到了,但它们是很久以前的!所以我很惊讶我仍然看到这种情况发生!附近有工作吗?我不想创建规范文件,我使用bdist
在我的mac上,一切正常,但在CentOS 6.7(我的CI服务器)上,由于RPM是为不同的平台构建的,所以一切正常。
在CentOS上,
.py
文件正在由rpm/brp python字节编译进行预编译。这将创建.pyc
和.pyo
文件,这些文件未在bdist\u rpm
中列出,因此我得到一个错误
我找到了,但它们是很久以前的!所以我很惊讶我仍然看到这种情况发生!附近有工作吗?我不想创建规范文件,我使用bdist_rpm来避免它。。。谢谢
下面是我试图打包的东西的结构示例:
<root>/
setup.py
my-awesome-app.py
help-scripts/
extract-config.py
下面是运行python setup.py bdist\u rpm
时的示例输出(只是导致错误的行):
+/usr/lib/rpm/find-debuginfo.sh——严格构建id/var/lib/jenkins/workspace/my awesome app/build/bdist.linux-x86_64/rpm/build/my-awesome-app-1.0
+/usr/lib/rpm/check buildroot
+/usr/lib/rpm/redhat/brp compress
+/usr/lib/rpm/redhat/brp strip static archive/usr/bin/strip
+/usr/lib/rpm/redhat/brp strip comment note/usr/bin/strip/usr/bin/objdump
+/usr/lib/rpm/brp python字节编译
+/usr/lib/rpm/redhat/brp python硬链接
+/usr/lib/rpm/redhat/brp java重新打包jars
处理文件:my-awesome-app-1.0-1.noarch
Requires(rpmlib):rpmlib(CompressedFileNames)这些bug都很老了,但CentOS6也是
Bdist_rpm非常简单,一旦达到它的极限,就进入了死胡同。我真的很担心没有人会告诉你如何使用setup.py修复它。有关此主题的更多信息,请参见:
我真的建议您使用:
pyp2rpm-干杯,这是一本有趣的读物。我最终使用了maven rpm构建插件,发现它有很好的文档记录,并且运行得非常好。我也有类似的问题。您在上面看到的命令来自rpmbuildrc
,但我不确定如何覆盖这些命令。
from distutils.core import setup
setup(name='my-awesome-app',
version='1.0',
author='Daniel Gruszczyk',
scripts=['my-awesome-app.py'],
data_files=[('/etc/bake',['help-scripts/extract-config.py'])],
)
+ /usr/lib/rpm/find-debuginfo.sh --strict-build-id /var/lib/jenkins/workspace/my-awesome-app/build/bdist.linux-x86_64/rpm/BUILD/my-awesome-app-1.0
+ /usr/lib/rpm/check-buildroot
+ /usr/lib/rpm/redhat/brp-compress
+ /usr/lib/rpm/redhat/brp-strip-static-archive /usr/bin/strip
+ /usr/lib/rpm/redhat/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump
+ /usr/lib/rpm/brp-python-bytecompile
+ /usr/lib/rpm/redhat/brp-python-hardlink
+ /usr/lib/rpm/redhat/brp-java-repack-jars
Processing files: my-awesome-app-1.0-1.noarch
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(FileDigests) <= 4.6.0-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires: /var/lib/jenkins/.pyenv/versions/2.7.5/bin/python
Checking for unpackaged file(s): /usr/lib/rpm/check-files /var/lib/jenkins/workspace/my-awesome-app/build/bdist.linux-x86_64/rpm/BUILDROOT/my-awesome-app-1.0-1.x86_64
error: Installed (but unpackaged) file(s) found:
/etc/help-scripts/extract-config.pyc
/etc/help-scripts/extract-config.pyo