monotone-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Monotone-devel] Windows/Win32 build instructions


From: Matthew Gregan
Subject: [Monotone-devel] Windows/Win32 build instructions
Date: Wed, 31 Aug 2005 11:01:11 +1200
User-agent: Mutt/1.5.10i

Hi all,

The prerequisites for building monotone have changed since we moved from
Crypto++ to Botan (we now require zlib), so I've taken this opportunity
to update the Windows build instructions.

To build monotone on Windows, you need to build and install the following:
==========================================================================

This step is preliminary setup--once this has been completed, you can
rebuild monotone regularly using only the instructions in the next
section.

    Package     Version
    =======     =======
    MingGW      4.1.1           
        http://prdownloads.sf.net/mingw/MinGW-4.1.1.exe?download
    MSYS        1.0.10          
        http://prdownloads.sf.net/mingw/MSYS-1.0.10.exe?download
    msysDTK     1.0.1           
        http://prdownloads.sf.net/mingw/msysDTK-1.0.1.exe?download
    gettext     0.11.5          
        http://prdownloads.sf.net/mingw/gettext-0.11.5-2003.02.01-1.exe?download
    wget        1.9.1           
        http://prdownloads.sf.net/mingw/wget-1.9.1-mingwPORT.tar.bz2?download
    libiconv    1.9.2           
        
http://prdownloads.sf.net/mingw/libiconv-1.9.2-mingwPORT.tar.bz2?download
    autoconf    2.59            
        http://prdownloads.sf.net/mingw/autoconf-2.59-mingwPORT.tar.bz2?download
    zlib        1.2.3           
        http://prdownloads.sf.net/mingw/zlib-1.2.2-mingwPORT.tar.bz2?download
    boost       1.33.0          
        http://prdownloads.sf.net/boost/boost_1_33_0.tar.bz2?download

    metamail    2.7             
        http://reality.sgiweb.org/freeware/source/metamail/mm2.7.tar.gz
    mingw-utils 0.3             
        http://prdownloads.sourceforge.net/mingw/mingw-utils-0.3.tar.gz?download

    Note 1: metamail and mingw-utils are only required to run the testsuite.

    Patches
    =======
    Update mingwPORT zlib from 1.2.2 to 1.2.3   
        http://flim.org/monotone/zlib-1.2.3-mingwPORT.patch
    Windows portability fixes for metamail      
        http://flim.org/monotone/mm2.7.patch


1.1.  MinGW-4.1.1.exe
      - Full Install
      - Uncheck gcc-{ada,java,objc}

1.2.  MSYS-1.0.10.exe
      - Install
      - Post-install

1.3.  msysDTK-1.0.1.exe
      - Install into the existing msys directory.

1.4.  gettext-0.11.5-2003.02.01-1.exe
      - Install into mingw installation directory

1.5.  wget-1.9.1-mingwPORT.tar.bz2
      - Run 'mkdir /usr/src'
      - Untar, cd into wget-1.9.1-mingwPORT, run 'cp -a wget.exe /mingw/bin/'
      - Run './mingwPORT.sh' and accept all defaults

1.6.  libiconv-1.9.2-mingwPORT.tar.bz2
      - Untar, cd into libiconv-1.9.2/mingwPORT
      - Run './mingwPORT.sh' and accept all defaults

1.7.  autoconf-2.59-mingwPORT.tar.bz2
      - Untar, cd into autoconf-2.59/mingwPORT
      - Run './mingwPORT.sh' and accept all defaults
      - Open /mingw/bin/autoconf in an editor, find the line like:
             : ${AUTOM4TE= d:/mingw/bin/autom4te }
        Change it to something like:
              : ${AUTOM4TE= /mingw/bin/autom4te }

1.8.  zlib-1.2.2-mingwPORT.tar.bz2
      - Untar, cd into zlib-1.2.2
      - Run 'patch -p1 < /path/to/zlib-1.2.3-mingwPORT.patch'
      - cd into mingwPORT
      - Run './mingwPORT.sh' and accept all defaults

1.9. boost_1_33_0.tar.bz2
     - Untar, cd into boost_1_33_0/tools/build/jam_src
     - Run 'cmd /c "build.bat mingw"'
       (the inner quotes are required)
     - cd to the root of the extract boost source
     - Run 'tools/build/jam_src/bin.ntx86/bjam.exe -sTOOLS=mingw
       -sSUFLIB=.a -sSUFOBJ=.o '-sBUILD=release <threading>single
       <optimization>speed <runtime-link>static' stage'
       (all on one line, and the inner quotes are required)
     - Run 'mkdir stage/include && cp -a boost stage/include'
     - Run 'for lib in stage/lib/*.a; do mv "$lib" "${lib/-mgw-*/.a}"; done'
     - Run 'ranlib stage/lib/*.a'
     - Run 'cd stage && cp -a include lib /mingw && rm -rf stage'


To run the testsuite, you need to install the following:
========================================================

2.1.  mm2.7.tar.gz
      - Untar, cd into the extracted source
      - Run 'patch -p1 < /path/to/mm2.7.patch'
      - cd into src/metamail
      - Run 'CC=gcc make -e mmencode'
      - Run 'cp -a mmencode.exe /mingw/bin/'

2.2.  mingw-utils-0.3.tar.gz
      - cd into /mingw
      - Untar


To build monotone, perform the following:
=========================================

3.0.  Follow the self-hosting instructions at venge.net to get a copy of
      the monotone repository

3.1.  monotone -d /path/to/monotone.db -b net.venge.monotone co monotone

3.2.  cd monotone

3.3.  autoreconf -i

3.4.  ./configure

3.5.  make

3.6.  To run the testsuite, run 'make check'


Cheers,
-mjg
-- 
Matthew Gregan                     |/
                                  /|                address@hidden




reply via email to

[Prev in Thread] Current Thread [Next in Thread]