VS2015编译Python2.7.14源码(失败)

      最近,在看《Python源码剖析》这本书。下载了当前最新版本的Python2.7.14进行编译运行一下。因为我当前电脑配置是WIN10+VS2015,在这里就记录一下该环境下编译运行的过程。

      因为Python-2.7.14\PCbuild下面的脚本文件get_externals.bat需要用到SVN,所以先安装Subversion For Windows。然后运行get_externals.bat下载编译需要的额外包。

VS2015编译Python2.7.14源码(失败)

      接下来,打开VS2015,导入Python的工程文件。

VS2015编译Python2.7.14源码(失败)

      导入项目源码之后,因为只编译python和pythoncore,需要再设置一下。进入如下目录:

VS2015编译Python2.7.14源码(失败)

      然后设置只编译python和pythoncore:

VS2015编译Python2.7.14源码(失败)

      好了,编译试一试。

VS2015编译Python2.7.14源码(失败)

      出现了好几个错误。由于 VS2015 取消了 timezone 的定义,改为 _timezone,所以代码里面用到 timezone 的地方都要改成 _timezone,daylight和tzname以一并修改为_daylight_tzname。继续编译,发现有两个链接错误。如下图所示:

VS2015编译Python2.7.14源码(失败)

      最后这个链接错误,可以看下这个Issue25759。链接错误我木有解决,因为在VS2010中编译成功了,本着也只是看看源码实现,暂时问题就搁这里了。