我'我在Windows 7上使用32位的Python 3.5.2创建了一个包的问题。
我通常使用setuptools的bdist_wininst
选项在Windows上部署我的Python包。这样,我的同事很容易通过启动Windows安装程序exe来更新程序包。但是,由于我更改为Python 3.5.2,因此在尝试安装软件包时出现以下错误:
Python version -32 required, which was not found in the registry
对我而言,似乎安装程序正在寻找一个名为" -32" 的Python版本,它无法找到。有人遇到同样的问题或找到解决方案吗?
答案 0 :(得分:3)
看起来这是一个已知的错误:https://bugs.python.org/issue26630。
我发现的解决方法是在十六进制编辑器中手动编辑可执行安装程序。字符-32
出现在位置7A5D4-7A5D6中。用所有NULL字符替换它们。之后,安装程序似乎工作正常。
显然,这是一个完整的黑客攻击。使用风险由您自己承担。
答案 1 :(得分:2)
我在3.6.0中找到的另一种解决方法(其中bdist_wininst
仍然被破坏)是使用MSI构建器bdist_msi
。
仅在https://bugs.python.org/issue26071 {替换https://bugs.python.org/issue26630)中标记为“固定为3.5.3,3.6.1和默认值”。