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]

    
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
        
            
            
        
    
DemoDemo用的代码,主要用来展示Python的一些应用
DocPython的UserManual。Latex格式的
Grammar语法文件。这个语法文件会在Python运行的时候被用来分析Python源代码
IncludePython Include用的头文件
LibPython的库文件
MacFor Mac
Misc如字面意思,一些不适合放在其他地方的文件就放在这里了
ModulesPython的一些Built-in Module的实现
ObjectsPython的基本内部对象的实现,比如class/list等等
ParserPython的词法分析和语法分析
PC比较老的Windows和OS2的Port的项目以及Port用到的一些公用文件放在这里,PCBuild和PCBuild8都要用到这个目录的内容
PCBuildPython用于VS 2003的Project文件
PCbuild8Python用于VS 2005的Project文件
PythonPython主程序代码
RISCOSPython的RISC OS Port
ToolsBuild和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

分享:

扫一扫在手机阅读、分享本文

请发表您的评论