Python distutils-将RPM安装路径更改为

Python distutils-将RPM安装路径更改为,python,rpm,distutils,rpmbuild,rpm-spec,Python,Rpm,Distutils,Rpmbuild,Rpm Spec,我有Python2.7.5,正在使用distutils(Python setup.py bdist_rpm)创建以下rpm me@hostname:/tmp/dist$ rpm -qpil myApp-2.0.146-1.noarch.rpm Name : myApp Version : 2.0.146 Release : 1 Architecture: noarch Install Date: (not installed) Group : Devel

我有Python2.7.5,正在使用distutils(
Python setup.py bdist_rpm
)创建以下rpm

me@hostname:/tmp/dist$ rpm -qpil myApp-2.0.146-1.noarch.rpm
Name        : myApp
Version     : 2.0.146
Release     : 1
Architecture: noarch
Install Date: (not installed)
Group       : Development/Libraries
Size        : 290576
License     : GPL
Signature   : (none)
Source RPM  : myApp-2.0.146-1.src.rpm
Build Date  : Wed 15 Oct 2014 02:57:08 PM EDT
Build Host  : hostname.example.lan
Relocations : /usr
Vendor      : Me <me@example.lan>
URL         : https://otherhost.example.lan/myApp
Summary     : My application
Description :
My application
/tmp/myApp/CHANGELOG
/tmp/myApp/README
/tmp/myApp/some.sh
/tmp/myApp/some.py
/tmp/myApp/libs/another.py
/tmp/myApp/libs/another.sh
...
…而不是在/tmp中

是的,我知道位置可能是错误的/低于标准/非传统的/不是最佳实践/愚蠢的/在你眼里是什么,但这是必须的。我就是不知道怎么做。在我的distutils
setup()
(可能是在我填充
data\u文件
setup()
的参数时)中有什么我可以/应该做的吗?这不重要,但我将分享以下内容,只是为了表达我在调用
setup()时的灵活性
.My
setup.py
由另一个Python脚本动态创建,然后由另一个脚本通过
子流程运行


我不知道是否可以“暂停”
setup.py
,这样我就可以操作规范文件。我不能
chroot
来伪造东西。不知道如何处理,但它似乎应该很简单。

回答:而不是动态生成setup.py并使用distutils(这似乎有一些限制)我现在生成一个rpmbuild.spec,可以做我需要的事情

干杯。

请看以下答案:


您应该尝试
[install]的
install lib
参数
setup.cfg
中的
部分

这显然不是关于如何使用
setuptools
@Ordiel实现它的答案,我没有看到任何有效的建议答案,包括您的建议。我做了我所做的,它也有效,因此它一定是一个答案。此外,我没有提到
setuptools
,因此您的评论是离题的。
/usr/local/bin/CHANGELOG
/usr/local/bin/README
/usr/local/bin/some.sh
/usr/local/bin/some.py
/usr/local/bin/libs/another.py
/usr/local/bin/libs/another.sh
...