gpt4 book ai didi

python - 具有可执行权限的 package_data 文件

转载 作者:太空宇宙 更新时间:2023-11-03 15:18:40 24 4
gpt4 key购买 nike

我正在使用 distutils 创建 Python (2) 包安装程序。在我的包中有几个二进制可执行文件,它们从我的 Python 代码中调用。我在我的 setup.py 文件中将它们列为 package_data,以便它们与包一起安装。但是,distutils 在安装这些文件时不会复制这些文件的可执行权限位。有没有办法强制 distutils 安装具有可执行权限的 package_data 文件?

最佳答案

根据其他一些 SO 答案得出结论 - 以下作品:

class my_install_lib(distutils.command.install_lib.install_lib):
def run(self):
distutils.command.install_lib.install_lib.run(self)
for fn in self.get_outputs():
if <this is one of the binaries I want to be executable>:
# copied from distutils source - make the binaries executable
mode = ((os.stat(fn).st_mode) | 0555) & 07777
distutils.log.info("changing mode of %s to %o", fn, mode)
os.chmod(fn, mode)

然后将 cmdclass={'install_lib':my_install_lib} 传递给 setup

关于python - 具有可执行权限的 package_data 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18409296/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com