Fix bug 4158.
[lyx.git] / INSTALL.Win32
blob7d1d4a71f8c8a021281650556a4f7314a432a847
1 Compiling LyX 1.5 for Win32
2 ===========================
4 LyX 1.5 can be compiled with Microsoft Visual C++ 2005 (recommended) or MinGW.
6 Compiling with MSVC 2005
7 ========================
9 1       Install MSVC 2005 SP1
11         If you don't have MSVC 2005 installed, download and install the free
12         Express edition from http://msdn.microsoft.com/vstudio/express/visualc/
13         From this page you should also download and install Service Pack 1.
15         A hotfix needs to be installed because of a bug in the compiler.
16         Search for VS80sp1-KB930859-X86-ENU.exe on Google and install it.
18 2       Install the Windows Platform SDK
20         see: http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
21         (You don't need to install the IIS, MDAC, and Tablet PC SDK that are
22          delivered with the Platform SDK.)
24 3       Configure MSVC
26         Follow exactly the steps of
27         http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
28         In Step 3 follow also the things noted as alternative.
29         (If you later get an error message that "windows.h" cannot be found,
30          create the global Windows environment variables "INCLUDE" and "LIB".
31          INCLUDE contains the paths to the "include" folders of the installed
32          platform SDK and of MSVC. LIB contains the corresponding "lib" folders.)
34 4       Install Python
36         Get the latest Python 2.5 version at
37         http://www.python.org/download/releases/2.5/
39         Install in C:\Python25 and add this directory to the PATH environment
40         variable (Start > Settings > Control Panel > System > Advanced >
41         Environment Variables).
43 5       Install SCons
45         Download and install SCons 0.96.92 (or newer, but not 0.96.1) from http://www.scons.org/download.php
47 6       Install the dependencies
49         Download ftp://ftp.lyx.org/pub/lyx/contrib/lyx-windows-deps-msvc-qt4.zip
50         and extract in the root directory of your LyX files (so you will get
51         a directory called lyx-windows-deps-msvc-qt4 next to the other directories
52         like src, development etc.).
54 7       Compile
56         From MS Visual Studio command prompt (not the regular cmd.exe), 
57         run 
58           > cd <lyx root directory>\development\Win32\packaging
59           > build_msvc.bat
61 8       First start of LyX
63         To start the just compiled lyx.exe, it is necessary to copy the following
64         files to the folder where the just compiled "lyx.exe" is:
66         Aiksaurus.dll
67         aspell.dll
68         iconv.dll
69         intl.dll
70         Microsoft.VC80.CRT.manifest
71         msvcp80.dll
72         msvcr80.dll
73         QtCore4.dll
74         QtGui4.dll
76         msvcp80.dll and msvcr80.dll are the C Runtime and C++ libraries
77         supplied with MSVC 2005. They are freely redistributable.
78         See http://msdn2.microsoft.com/en-us/library/8kche8ah(VS.80).aspx
79         for details.
81         All of the other .dlls above and the lyx executable are compiled
82         from code released under the GPL which states (section 3) that
83         GPL software may be linked against system files such as msvcp80.dll
84         and msvcr80.dll.
86 Compiling with MinGW
87 ====================
89         These instructions allow you to create a basic LyX build with MinGW.
90         To be able to use all LyX features, compiling with MSVC 2005 is recommended.
91         Creating an installer for MinGW builds is no longer supported.
93 1       Install MinGW, and all the gcc-related stuff, and win32api. 
95 2       download qt-win-opensource-4.x.x-mingw.exe and install to c:\qt\4.2.2.
97 3       install python and scons as instructed above. Set $path for python
98            to make your life a bit easier.
100 4       Check out lyx svn to c:\lyx-devel\lyx-1.5.x
102 5       Download zlib binaries and developer files (zlib-1.2.3-bin.zip and
103            zlib-1.2.3-lib.zip) from http://gnuwin32.sourceforge.net/packages/zlib.htm
104            libiconv from http://gnuwin32.sourceforge.net/packages/libiconv.htm
105            gettext  from http://gnuwin32.sourceforge.net/packages/gettext.htm
106            unpack all of them to the same directory c:\lyx-devel\mingw_deps.
108 6       start a command window, run commands:
109            $ cd c:\lyx-devel\lyx-1.5.x
110            $ scons -f development\scons\SConstruct \
111                extra_lib_path=..\mingw_deps\lib  \
112                    extra_inc_path=..\mingw_deps\include \
113                    extra_bin_path=..\mingw_deps\bin \
114                    qt_dir=c:\qt\4.2.2 \
115                    DESTDIR=..\lyx-1.5-install \
116                    install
119 Creating the Installer
120 ======================
122         To create an installer with LyX and all related components, download
123         and install the latest NSIS from http://nsis.sourceforge.net
125         Open development\Win32\packaging\installer\setttings.user.nsh and modify
126         the settings depending on your build environment.
128         Finally, go to development\Win32\packaging\installer
129         (in a normal Windows Explorer), right-click on lyx.nsi and click
130         "Compile NSIS Script".
132         You can also use the installer target of scons. Namely, use a command like
133            $ scons -f development\scons\SConscript installer
134         This will create $BUILDDIR\lyx-version-timestamp-Installer.exe for a devel version,
135         and $BUILDDIR\lyx-version-Install.exe for a released version of lyx.
137         If you also want to generate bundled installer, download 
138         lyx-windows-bundle-deps.zip from http://www.lyx.org/~bpeng, unpack
139         to lyx-windows-bundle-deps under the top source directory, and run
140           $ scons -f development\scons\SConstruct installer bundle=1
141         If you prefer to use another directory, you can use option bundle_dir like
142           $ scons -f development\scons\SConstruct installer bundle=1 bundle_dir=c:\bundle