Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在支持UCS4的Windows上构建Python解释器_Python - Fatal编程技术网

在支持UCS4的Windows上构建Python解释器

在支持UCS4的Windows上构建Python解释器,python,Python,如何将Python解释器构建项目配置为在Windows上使用UCS4支持进行构建?例如,我想为Windows创建Python2.6.9、64位+UCS4支持 我们希望为多个平台生成预编译的python文件(.pyc文件)。由于我们现有的构建设置,我们希望在Windows上构建所有的.pyc文件,这些文件将被分发到其他类似Unix的平台上使用 因此,我们需要在Windows上有各种版本的Python解释器,这些版本不作为安装程序包存在 我已经使用VisualStudio和未修改的Python源代码

如何将Python解释器构建项目配置为在Windows上使用UCS4支持进行构建?例如,我想为Windows创建Python2.6.9、64位+UCS4支持

我们希望为多个平台生成预编译的python文件(.pyc文件)。由于我们现有的构建设置,我们希望在Windows上构建所有的.pyc文件,这些文件将被分发到其他类似Unix的平台上使用

因此,我们需要在Windows上有各种版本的Python解释器,这些版本不作为安装程序包存在


我已经使用VisualStudio和未修改的Python源代码树以及VisualStudio项目文件构建了具有UCS2支持的Python 2.6.9 32位。我在pyconfig.h中看到了#define Py_UNICODE_SIZE 2。但是,将此2更改为4对生成的Python解释器没有影响。

Python使用配置工具来配置构建。如果无法运行配置脚本,则可能需要安装cygwin以运行配置脚本。您需要传递标志
--enable unicode=ucs4
,以获得ucs4,并且可能需要许多其他标志才能使其与microsoft编译器一起工作


当然,如果您可以容忍基于cygwin的版本,并安装所有必要的cygwin位来构建,那么您就可以在cygwin下构建,而无需提供很多标志,因为configure将自动检测必要的设置。

这有什么问题吗?我无法将构建配置为生成UCS4 python解释器。它总是构建一个UCS2解释器。@bluedog您需要运行配置脚本。这意味着你需要一个像posix bourne一样的外壳。你怎么得到那是你的事。Cygwin是一种方式,它不要求您使用任何特定的编译器。PYC文件似乎是UCS2/4不可知的。如果是真的,我的解决方案就是不用担心构建UCS4 python,只使用UCS2版本生成的PYC文件。@bluedog这是正确的。我不知道那是你真正关心的。这个答案提供了你问题的答案,而不是你(非)问题的解决方案。实际上,甚至担心pyc文件都没有意义。您的代码,除了(可能)注释之外,还可以从注释中重建。