一直没有在Windows下编译Subversion,官方的编译说明(源代码目录中的文件INSTALL)还不错,只是有一些太全面了,一下子搞定全部还真的有点麻烦,这里说说最简单的部分吧,只是说一下一些需要注意的地方。
首先说说编译环境,我是用VC6做的,根据说明可以下载VC6,必须是service pack打全了,好象是SP6。然后要安装可用的Windows SDK,可惜文档指向的那个SDK根本不支持VC6,我们还要下载一个旧版本的,可以从下面其中某个链接得到:
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm
http://www.microsoft.com/msdownload/platformsdk/sdkupdate/XPSP2FULLInstall.htm
下载后的安装方式,可以参看上面的链接,安装后还要与VC6集成,这个时候要先运行一次VC6,然后运行SDK的registration就完成了注册,最后看看VC6的选项,是不是包含了最新SDK的路径。
再说说目录,文档中说要将Subversion的源代码放到根目录SVN/src-trunk下,我就放到了F:\SVN\src-trunk,虽然不是必须的,不过这么做也是有原因的,后面会说到。
然后下载需要的东西,主要就是INTALL中的“E.1 Prerequisites”部分的内容,需要注意的就是subversion依赖包,里面包含了apr,zlib和neon,可以从这里下载,然后把这些包解压缩放到F:\SVN\src-trunk下,你可能会注意到apr的几个项目可以用vc打开,也可以用VC编译,如果后面遇到找不到apr.h之类的编译问题,你就需要自己编译一下这几个项目。
下面按照说明继续就可以了,为了简单,我们可以先把ssl、apache的设置先省去,只准备编译最基本的部分,这样做完了设置后,就可以进行编译了。
这里我们用了一个批处理文件,位于F:\SVN\src-trunk\build\win32\vc6-build.bat.in,我们可以通过修改它来建立我们的构建脚本,我们将这个文件拷贝到F:\SVN,重命名为vc6-build.bat,然后修改开头环境变量部分,我的修改如下:
rem ====== Set these shell variables before doing a build.
rem VER is used to name the output bin dir as svn-win32-%VER%
set VER=trunk
rem DIR is appended to src- to make the dir name, e.g., src-trunk
set DIR=trunk
set DRIVE=F
set PYTHONDIR=D:\language\python25
set AWKDIR=F:\SVN\awk
set NASMDIR=F:\SVN\asm
set SDKINC=D:\Program Files\Microsoft SDK\include
set SDKLIB=D:\Program Files\Microsoft SDK\lib
set APACHEDIR=D:\server\Apache2
set GETTEXTINC=F:\SVN\gettext-0.14.4-bin\include
set GETTEXTLIB=F:\SVN\gettext-0.14.4-bin\lib
set GETTEXTBIN=F:\SVN\gettext-0.14.4-bin\bin
rem ====== End of shell variables which need to be set.
然后因为我的编译没有涉及apache,和ssl,所以删除apache和ssl的编译,然后修改处理Subversion项目部分的内容如下:
python gen-make.py -t dsp –with-berkeley-db=db4-win32 –enable-nls –enable-bdb-in-apr-util –with-libintl=..\svn-win32-libintl
然后运行这个批处理,希望没有出错,那就看看你的F:\SVN\svn-win32-trunk\bin,有没有生成的dll和exe,然后运行一个svn –version看看如何。
Related posts:
0 Responses
Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.