• R/O
  • SSH


File Info

Rev. 7124
Größe 8,468 Bytes
Zeit 2006-07-26 02:50:13
Autor fernandonajera
Log Message

A stupid note about the wtl library. It should be crystal clear for any VC++ programmer, but it doesn't hurt to make the instructions a little more explicit.


First, you need to install the compiler package.

A. You need VS.NET2005 (or at least Visual C++ .NET 2005) to allow
   building of the full TortoiseSVN package. This is the recommended
   option, but it is not free :-(

B. If you do not have access to VS.NET you can download the free
   Visual C++ 2005 Express Edition (only free for a limited period).
   This will allow you to build the subversion libraries and the
   SubWCRev and TortoiseBlame programs only.
   - Install Visual C++ 2005 Express Edition.
     Download it from http://msdn.microsoft.com/vstudio/express/visualc/
   - Install Microsoft Platform SDK for Windows Server 2003 SP1
     You need at least the following components of the SDK:
       - Windows Core SDK
       - Web Workshop (IE) SDK
       - Data Access Services
       - Debugging Tools
   - Install MASM 6.15 from: http://win32assembly.online.fr/files/masm615.zip
     and add it to the PATH environment variable
   Do not bother to install WiX as you cannot build very much.

C. If you plan to build 64 bit packages, install the package 
   - "Language Tools" -> "Visual C++" -> "X64 Compilers and Tools" 
     available in the VS.NET2005 Professional and higher. 
     This will provide you with a cross-compiler and a suitable 
     command shell. On XP64, there will also be a native compiler.
   - Using the x64 SDK (available for free download in the Windows® 
     Server 2003 PPlatform SDK on http://www.microsoft.com/downloads) 
     may work as well but has not been tested.

Next you need to install some utilities/programs:
- Install the java runtime. Get it from http://java.sun.com
  or from this direct link:
- Install Python 2.4. You can get it from here:
- Set the path where you installed python to the PATH environement variable.
- To translate the docs, you will also need the libxml2 python bindings.
  Get them from here: http://users.skynet.be/sbi/libxml-python/
- Install Perl. Get it from http://www.activestate.com/Products/ActivePerl/
- Get the WiX Core Toolset from http://wix.sourceforge.net and unzip
  them. (*). Then add it to the PATH environment variable.
- Get WiX Votive from http://wix.sourceforge.net and install it.
- Get NSIS from http://nsis.sourceforge.net and install it.
- Install the latest Nant release. Get it from http://nant.sourceforge.net
  At the time of this writing, you need to get the at least version 0.85 RC4.
- Add the Nant bin folder to the PATH environment variable.

You may have to logoff/logon to make the new environment variables take effect!

- create a new folder on your harddisk, e.g. SVN. Make sure you have at least
  1.5 GB of free space left!!!
- create a new folder in SVN called 'common'
- Download the openssl source package from
  http://www.openssl.org/source/ and unzip it to SVN\common, then rename
  the folder from openssl-0.9.xx to openssl
- Download the zlib source from 
  http://www.gzip.org/zlib/ and unzip it to SVN\common\zlib
- If you want to include the dictionary and thesaurus in the installer/languagepacks,
  then you have to download those from http://lingucomponent.openoffice.org/
  and put the files in SVN\common\Spell Note: the names of the files are important!
  They have to be en_US.aff, en_US.dic, en_GB.aff and en_GB.dic.
  Important: Only the thesaurus in the format for OO2 will work! Earlier versions
  will crash TSVN!!
- Checkout the TortoiseSVN sources from the Subversion repository into
- Download the tools to build the TSVN docs from 
  http://tortoisesvn.tigris.org/files/documents/406/11147/Tools.zip and
  unzip them into SVN\TortoiseSVN\Tools\
- Make a copy of the file default.build.user.tmpl in the TSVN root folder and
  rename that copy to default.build.user Then simply adjust the paths as mentioned
  in that file.
- To compile the crashrpt project for TortoiseSVN, you'll need the WTL.
  You can get that library from here: http://wtl.sourceforge.net/
  Unzip it and then add the path of the wtl 'include' folder 
  to the VS.NET 2005 include path.

Building 32 bit packages

  Hint: before you can start building TortoiseSVN, you need to call the vsvars32.bat
  file which is located in %VS80COMNTOOLS%. If you don't want to do that every time,
  you can have the command shell call this file automatically:
  - Create a .reg file with the following code and merge it in your registry
    Windows Registry Editor Version 5.00
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor]
    "AutoRun"="\"C:\\Program Files\\Microsoft Visual Studio 8\\Common7\\Tools\\vsvars.bat\""
  Next time you start the command prompt, that file will be executed automatically.

  Note that for the Express edition you need to sort out the vars for the platform SDK
  as well. The easiest way I found was to edit the supplied VC++ file
  C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat
  Look for the :x86 label and add an extra call to setenv.cmd as shown below:

	if not exist "%~dp0bin\vcvars32.bat" goto missing
	call "%~dp0bin\vcvars32.bat"
	rem Added SDK setup 14/12/2005 SJL
	call "C:\Program Files\Microsoft Platform SDK\setenv.cmd"
	goto :eof

  Then call vsvarsall.bat when you start your command processor instead
  of vsvars32 as described above.

  Now, if you got some time left you can run the build script to compile
  TortoiseSVN. Grab a cup of coffee - it can take up to two hours, depending on
  how fast your computer is (on mine, it takes 1 hour and 50 minutes)!

  > nant
  will show you some help about the targets you can use

  > nant setup
  will compile everything, including docs and languagepacks and create the msi installer

  Note: you may notice some compiler errors when the build script compiles 
  Subversion. The errors you will see are:
  > error C2065: 'SVN_FS_WANT_DB_MAJOR' : undeclared identifier
  > error C2065: 'SVN_FS_WANT_DB_MINOR' : undeclared identifier
  > error C2065: 'SVN_FS_WANT_DB_PATCH' : undeclared identifier
  This is expected and you don't have to worry about that. The reason for those
  erros is that TortoiseSVN builds the Subversion library twice. Once with 
  all the ra-layers and all dbs, and once without those. The errors come
  from that 'raw' build, but from libraries which aren't used in that build
  anyway. Sure, the build script could just compile the libraries which
  are really needed for that build, but it's much easier to just build the
  whole solution instead of individual projects.
  If you want to improve the build script to get rid of those errors, be our guest!

  If you are building using VC++ Express, your options are somewhat limited.
  Firstly you need to change the build tool in default.build.user.
  There is already a line to set this up which you need to un-comment:

	<property name="buildtool" value="vcexpress.exe" />

  Now you need to build the Subversion libraries:
  > nant Subversion

  Note that the VC Express compiler works in the background without a console
  window. There is a lot of disk activity with no apparent result showing
  in the Nant console window. Be patient!

  Before building the applications, update the version info:
  > nant VersionInfo

  Now you can open the SubWCRev.vcproj file to start the IDE.
  Some error dialogs will come up, which you can ignore.
  Right click on SubWCRev and 'Build'.

  You can also right click on TortoiseBlame and build that.

Building 64 bit packages on win32 (cross-compile)

  First, we build some 32-bit SVN utilities you will need later 
  during the build process. Follow the instruction above or just
  open "Microsoft Visual Studio 2005" -> "Visual Studio Tools" ->
  "Visual Studio 2005 Command Prompt", change to the TSVN source
  directory and run

	nant release binaries

  Now, build the x64 packages: Open 
  "Microsoft Visual Studio 2005" -> "Visual Studio Tools" -> 
  "Visual Studio 2005 x64 Cross Tools Command Prompt", change to the
  TSVN source directory and run

	nant x64 cross release setup

  After the script finished, the packages can be found in .\bin .

Building 64 bit packages on x64

  To build native packages on your 64 bit Windows, just open
  "Microsoft Visual Studio 2005" -> "Visual Studio Tools" -> 
  "Visual Studio 2005 Win64 Command Prompt", change to the
  TSVN source directory and run

	nant x64 release setup

  After the script finished, the packages can be found in .\bin .

Show on old repository browser