Python源码分析1 - Building Python
作者:我就是个世界
发表于:2010-04-21
Python是一种动态的脚本语言。具体的我就不多介绍了,可以参考[url=http://www.python.org/][color=#669932]www.python.org[/color][/url]. Python是Open Source的,在[url=http://www.python.org/][color=#669932]www.python.org[/color][/url]可以下载到最新的2.5版的源代码。源代码链接在这里:[url=http://www.python.org/ftp/python/2.5/Python-2.5.tgz][color=#669932]Python 2.5 [/color][/url]
下载下来之后直接解压缩可以看到如下的目录结构:
[separator]
在Unix/Linux/Cywin下面可以直接键入:
[code]
./configure
make install
[/code]
Windows用VC Build的话,可以直接打开PCBuild/PCBuild8下面相应的Solution来Build。直接Build的话会出不少错误,有必要做一些调整:
不是所有的Project都可以立刻Build,部分Project由于对第三方库有依赖,一般情况下可以直接跳过Build这些Project,而只Build核心的Python代码。在Configuration Manager里面直接Exclude就可以。必需的Project是:make_buildinfo, make_versioninfo, python, pythoncore
PythoncoreProject少了一个文件,需要手动把Modules\_typesmodule.c加入到工程中去,再Build
今天就写到这里,下一篇我会通过跟踪执行一个最简单的Python代码来介绍Python执行的流程。
作者: ATField
E-Mail: atfield_zhang@hotmail.com
Blog: http://blog.csdn.net/atfield
下载下来之后直接解压缩可以看到如下的目录结构:
[separator]
Demo | Demo用的代码,主要用来展示Python的一些应用 |
Doc | Python的UserManual。Latex格式的 |
Grammar | 语法文件。这个语法文件会在Python运行的时候被用来分析Python源代码 |
Include | Python Include用的头文件 |
Lib | Python的库文件 |
Mac | For Mac |
Misc | 如字面意思,一些不适合放在其他地方的文件就放在这里了 |
Modules | Python的一些Built-in Module的实现 |
Objects | Python的基本内部对象的实现,比如class/list等等 |
Parser | Python的词法分析和语法分析 |
PC | 比较老的Windows和OS2的Port的项目以及Port用到的一些公用文件放在这里,PCBuild和PCBuild8都要用到这个目录的内容 |
PCBuild | Python用于VS 2003的Project文件 |
PCbuild8 | Python用于VS 2005的Project文件 |
Python | Python主程序代码 |
RISCOS | Python的RISC OS Port |
Tools | Build和Extend Python所需的工具 |
在Unix/Linux/Cywin下面可以直接键入:
[code]
./configure
make install
[/code]
Windows用VC Build的话,可以直接打开PCBuild/PCBuild8下面相应的Solution来Build。直接Build的话会出不少错误,有必要做一些调整:
不是所有的Project都可以立刻Build,部分Project由于对第三方库有依赖,一般情况下可以直接跳过Build这些Project,而只Build核心的Python代码。在Configuration Manager里面直接Exclude就可以。必需的Project是:make_buildinfo, make_versioninfo, python, pythoncore
PythoncoreProject少了一个文件,需要手动把Modules\_typesmodule.c加入到工程中去,再Build
今天就写到这里,下一篇我会通过跟踪执行一个最简单的Python代码来介绍Python执行的流程。
作者: ATField
E-Mail: atfield_zhang@hotmail.com
Blog: http://blog.csdn.net/atfield
请发表您的评论