Changes To compillingOnWindows
Not logged in

Changes to "compillingOnWindows" between 2010-08-28 10:59:47 and 2010-08-28 11:04:09

     1         -<i>Empty Page</i>
            1  +
            2  +<h3>Compiling under windows with Mingw</h3>
            3  +<h4>Installing the tools.</h4>
            4  +  *  download [http://sourceforge.net/projects/mingw/files/|mingw-xx.exe] version 5.1.6 or later. Install it. I assume it will be installed in <strong>c:\MingW</strong>
            5  +  *  download [http://sourceforge.net/projects/mingw/files/|msys-xx.exe] version 1.0.10 or later. Install it. I assume it will be installed in <strong>c:\msys</strong>
            6  +  *  download [http://gnuwin32.sourceforge.net/packages/zlib.htm|zlib] the binary and developer files. Extract to <strong>c:\MingW</strong>
            7  +  *  If you want <strong>https</strong> support download [http://gnuwin32.sourceforge.net/packages/openssl.htm|openssl] the binary and developer files. Extract to <strong>c:\MingW</strong>
            8  +  *  download [http://www.fossil-scm.org/download.html|fossil] and copy fossil.exe to <strong>c:\MingW\bin</strong>
            9  +
           10  +<h4>Getting fossil source code</h4>
           11  +  *  start msys. This will start a bash shell. 
           12  +  *  mkdir fossil; cd fossil
           13  +  *  clone fossil repository. e.g. fossil clone http://www.fossil-scm.org/ myclone.fossil
           14  +  *  mkdir src; cd src
           15  +  *  fossil  open ../myclone.fossil
           16  +
           17  +<h4>Compiling fossil source code</h4>
           18  +  *  If you want <strong>https</strong> supports
           19  +     <ul><li>make -f Makefile.w32 FOSSIL_ENABLE_SSL=1 LIB="-lssl -lcrypto -lgdi32 -lmingwex -lz -lws2_32"</li> </ul>
           20  +  *  else do make -f Makefile.w32 
           21  +
           22  + 
           23  +<h3>Compiling under linux for windows with Mingw</h3>
           24  +This is called cross compiling. I'm using [http://www.archlinux.org/|Arch linux] distribution which
           25  +uses the package manager pacman to install packages. If you have a differen linux distribution the packages might be called different. I assume a login name of renez substitute yours were apropiate.
           26  +
           27  +<h4>Installing the tools.</h4>
           28  +  *  Install mingw32-gccs. With Arch linux you do Pacman -S mingw32-gcc (As root!). This will be installed in <strong>/usr/i486-mingw32</strong>
           29  +  *  download [http://gnuwin32.sourceforge.net/packages/zlib.htm|zlib] the binary and developer files.
           30  +  *  If you want <strong>https</strong> support download [http://gnuwin32.sourceforge.net/packages/openssl.htm|openssl] the binary and developer files.
           31  +  *  Extract to <strong>/usr/i486-mingw32</strong> by: su to root
           32  +  *  cd <strong>/usr/i486-mingw32</strong>
           33  +  *  unzip  ~renez/Downloads/zlib-1.2.3-bin.zip
           34  +  *  unzip  ~renez/Downloads/zlib-1.2.3-lib.zip
           35  +  *  unzip  ~renez/Downloads/openssl-0.9.8h-1-bin.zip
           36  +  *  unzip  ~renez/Downloads/openssl-0.9.8h-1-lib.zip
           37  +  *  exit root
           38  +  *  download [http://www.fossil-scm.org/download.html|fossil] for linux, and copy fossil to some where in your PATH directories maybe $HOME/bin.
           39  +
           40  +<h4>Getting fossil source code</h4>
           41  +  *  cd ; mkdir fossil; cd fossil
           42  +  *  clone fossil repository. e.g. fossil clone http://www.fossil-scm.org/ myclone.fossil
           43  +  *  mkdir src; cd src
           44  +  *  fossil  open ../myclone.fossil
           45  +
           46  +<h4>Compiling fossil source code</h4>
           47  +  *  If you want <strong>https</strong> supports
           48  +     <ul><li>make -f Makefile.w32 TCC="i486-mingw32-gcc -Os -Wall  -DFOSSIL_I18N=0  -L/usr/i486-mingw32/lib -I/usr/i486-mingw32/include -DFOSSIL_ENABLE_SSL=1" FOSSIL_ENABLE_SSL=1 LIB="-lssl -lcrypto -lgdi32 -lmingwex -lz -lws2_32"</li> </ul>
           49  +  *   else make -f Makefile.w32 TCC="i486-mingw32-gcc -Os -Wall  -DFOSSIL_I18N=0  -L/usr/i486-mingw32/lib -I/usr/i486-mingw32/include "
           50  +
           51  +<h4>Distribution of cross compiled fossil.exe</h4>
           52  +Because you have linked against zlib and maybe ssl you need to include from <strong>/usr/i486-mingw32/bin</strong> zlib1.dll and, optional, libssl32.dll (and maybe also libeay32.dll)
     2     53   
     3         -how to compile on windows
           54  +<h4>testing the cross compiled fossil.exe</h4>
           55  +  *  copy fossil.exe and the dll's to a windows system. For testing purpose all in one directory. For production use a directory in your PATH
           56  +  *  fossil clone http://www.fossil-scm.org/ http.fossil
           57  +  *  If it has <strong>https</strong> support then fossil clone https://www.fossil-scm.org/ https.fossil
           58  +