gpt4 book ai didi

python - 在 Linux 上从 python 执行 makensis

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

我已经在linux上编译了makensis。从像这样的 bash shell 执行时效果很好。

makensis /path/to/setup.nsi

我想使用 python 脚本来执行它。我尝试过以下方法:

#using the symlink in /usr/bin
subprocess.call("makensis setup.nsi")

#absolute path to makensis executable
subprocess.call("/usr/share/makensis/makensis setup.nsi")

#Change directory
os.chdir("/usr/share/makensis")
subprocess.call("makensis setup.nsi")

我还尝试将 cwd arg 传递给 subprocess.call。

在所有这些情况下,makensis 都无法找到其依赖项。它正在查找/usr/bin/并抛出此错误:

Error: opening stub "/usr/bin/Stubs/zlib"

我不确定这是否是我的 python 脚本的问题或 makensis 的编译方式的问题。我倾向于认为它是 python 脚本,因为 makensis 在 bash shell 中工作得很好。非常感谢任何指点。

编辑:这是我用来构建 nsis 的 scons 命令:

scons SKIPSTUBS=all SKIPPLUGINS=all SKIPUTILS=all SKIPMISC=all NSIS_CONFIG_CONST_DATA_PATH=no PREFIX=/usr/share/ APPEND_CCFLAGS=-m32 APPEND_LINKFLAGS=-m32 install-compiler

最佳答案

我们广泛使用 NSIS,但我从未想过尝试在 posix/unix 平台上运行它。无论如何,我检查了周围(因为我总是对更多 NSIS 配置感兴趣),并找到了此链接 - 它专门标识了您的问题并包含解决方案

http://wiki.koshatul.com/Installing_Nullsoft_Scriptable_Installer_System_%28NSIS%29_on_BSD#Error:_opening_stub_.22.2Fusr.2Flocal.2Fbin.2FStubs.2Fzlib.22

Remove the NSIS_CONFIG_CONST_DATA_PATH=no if you have it from your scons line, check the paths are all good for building as well.

关于python - 在 Linux 上从 python 执行 makensis,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22774140/

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