编译TortoiseSVN源代码

安装编译器软件  

A. 你需要 VS.NET2005 (或者至少 Visual C++ .NET 2005) 构建全部 TortoiseSVN

软件包。这是推荐选项,但不是免费的 (如果你需要构建 msi 安装包,确认已经安装     "Tools for Redistributing Applications"。

B. 如果没有 VS.NET,你可以下载免费的 Visual C++ 2005 Express。它只能构建

Subversion 库,SubWCRev,TortoiseBlame 和 TortoiseIDiff 程序。

- 安装 Visual C++ 2005 Express 版本。

下载地址: http://msdn.microsoft.com/vstudio/express/visualc/

 - 安装 Microsoft Platform SDK,版本是 Windows Server 2003 SP1

你至少要安装 SDK 中的以下组件:

 - Windows Core SDK

 - Web Workshop (IE) SDK

 - Data Access Services

 - Debugging Tools

 - 安装 MASM 6.15,下载地址: http://win32assembly.online.fr/files/masm615.zip

将它增加到环境变量 PATH 中。

C. 如果你计划构建 64 位软件包,请安装软件包

- 在 VS.NET2005 专业版或更高版本中的 "Language Tools" -> "Visual C++"

 -> "X64 Compilers and Tools"

 它会为你提供交叉编译器,以及适当的命令行环境。在 XP64 中,还会有一个本机编    译器。

 - x64 SDK (在 Windows Server 2003 Platform SDK 中有,可以从

 http://www.microsoft.com/downloads 免费下载) 或许可用,但是尚未测试。

安装必备工具/程序

软件名称

下载地址

WiX

http://wix.sourceforge.net

Python 2.4

http://www.python.org/windows/

NAnt

http://nant.sourceforge.net

注:将这些可执行程序/动态库的路径增加到环境变量 PATH 中。为了让新的环境变量生效,你可能需要重新登录!

软件名称

下载地址

libxml2 python bindings

http://users.skynet.be/sbi/libxml-python/

Perl

http://www.activestate.com/Products/ActivePerl/

Java runtime

http://java.sun.com/webapps/getjava/BrowserRedirect

软件名称

下载地址

gdiplus merge module(#)

http://users.skynet.be/sbi/libxml-python/

注:将文件gdiplus.msm 复制到目录 "%CommonProgramFiles%\Merge Modules" 中。

软件名称

下载地址

OpenSSL source

http://www.openssl.org/source/

ZLib source

http://www.gzip.org/zlib/

tools collection

http://tortoisesvn.tigris.org/files/documents/406/37871/Tools.zip

dictionaries/thesauri

http://lingucomponent.openoffice.org/

注:dictionaries/thesauri可直接在TortoiseSVN安装目录的Languages目录下复制。

整理代码目录 

1. 在你的硬盘上创建新目录,例如 SVN。确认你最少有 1.5 GB 剩余空间!

2. 在目录 SVN 中创建新目录 "common"。

 3. 在目录 "common" 中解压 openssl 源代码,改名为 "openssl"。

 4. 在目录 "common" 中解压 zlib 源代码,改名为 "zlib"。

 5. 将 dictionaries/thesauri 复制到 "common\spell"。注意文件名称很重要!必须为 en_US.aff,en_US.dic,en_GB.aff 和 en_GB.dic (或者你使用的其它语言)。警告: 只支持词典格式 OO2。早期版本会让 TortoiseSVN 崩溃!  

6. 从 Subversion 版本库将 TortoiseSVN 源代码检出到目录 SVN\TortoiseSVN。

 7. 解压文件 "tools.zip",建议目录是 "SVN\TortoiseSVN\Tools"。注意: 目录 tools 的路径不能包含特殊字符或空格。

 8. 将位于 TSVN 根目录的文件 default.build.user.tmpl 复制到同一目录下,并重命名为

 default.build.user。然后调整文件中使用的路径为你的真实路径。

 9. 将文件 doc\doc.build.user.tmpl复制到同一目录下,并重命名为doc.build.user。然后调整文件中使用的路径为你的真实路径。

注意:某些语言的文档需要特别的配置。如果在目录 doc\xsl\languagecode\ 有文件

 "userconfig.template.xml",那么将其复制到 "userconfig.xml", 然后调整文件中使用的路径为你的真实路径。

10. SVN根目录下的ext\hunspell文件夹内有三个文件需要替换,可能是文件编码的问题,具体原因及文件下载请参考:http://suddymail.org/show-187-1.html。

本文附件中也可以下载这三个文件。

构建32位软件包  

1. 在运行中输入"CMD"调出命令行控制台,然后运行目录 %VS80COMNTOOLS%(本机安装VS.NET2005)或%VS90COMNTOOLS%(本机安装VS.NET2008)中的文件vsvars32.bat。

 2. 切换命令行当前路径为...\SVN\TortoiseSVN。

 3. 输入命名Nant,命令行会显示你可用的目标的帮助信息(这些信息在default.build文件中定义)。主要的几个编译命令如下:

命令

说明

Nant setup

重新编译TortoiseSVN并,生成MSI安装文件

Nant msi

生成MSI安装文件,但并不编译文件

Nant Subversion

构建 Subversion 库

一般情况下Nant setup都不会正常完成,总会有点错误,但此时大部分库都已生成成功,可以使用VS.NET打开这个项目进行修改,编译。

注:生成MSI时,可能提示某些文件找不到,可以在安装了TortoiseSVN的计算机上复制相应文件到命令行提示的位置,完成MSI的生成。

也可以修改生成MSI时,需要的文件,这需要配置WIX的配置文件,我们下次将讨论这个问题。

(本文根据TortoiseSVN自带的build说明编写)

 需要替换的文件

原文地址:https://www.cnblogs.com/xiongpq/p/1710576.html