]> git.lyx.org Git - lyx.git/blob - INSTALL.Win32
update build instructions concerning service pack 1 for MSVC 2005
[lyx.git] / INSTALL.Win32
1 Compiling LyX 1.5 for Win32
2 ===========================
3
4 LyX 1.5 can be compiled with Microsoft Visual C++ 2005 or MinGW.
5
6 Compiling with MSVC 2005
7 ========================
8
9 1       Install MSVC 2005
10
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         (Do not install the service pack 1 for MSVC 2005 as this introduces a bug
14          that makes compiling LyX's Qt 4 frontend impossible, see
15          http://support.microsoft.com/?scid=kb%3Ben-us%3B930198&x=13&y=12)
16
17 2       Install the Windows Platform SDK
18
19         see: http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
20         (You don't need to install the IIS, MDAC, and Tablet PC SDK that are
21          delivered with the Platform SDK.)
22
23 3       configure MSVC
24
25         Follow exactly the steps of
26         http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
27         In Step 3 follow also the things noted as alternative.
28         (If you later get an error message that "windows.h" cannot be found,
29          create the global Windows environment variables "INCLUDE" and "LIB".
30          INCLUDE contains the paths to the "include" folders of the installed
31          platform SDK and of MSVC. LIB contains the corresponding "lib" folders.)
32
33 4       Install Python
34
35         Get the latest Python 2.5 version at
36         http://www.python.org/download/releases/2.5/
37
38         Install in C:\Python25 and add this directory to the PATH environment
39         variable (Start > Settings > Control Panel > System > Advanced >
40         Environment Variables).
41
42 5       Install SCons
43
44         Download and install SCons 0.96.92 (or newer, but not 0.96.1) from http://www.scons.org/download.php
45
46 6       Install the dependencies
47
48         Download http://www.lyx.org/~bpeng/lyx-windows-deps-msvc-qt422.zip
49         and extract in the root directory of your LyX files (so you will get
50         a directory called lyx-windows-deps-msvc next to the other directories
51         like src, development etc.).
52
53 7       Compile
54
55         From MS Visual Studio command prompt (not the regular cmd.exe), 
56         run development\Win32\packaging\build_msvc.bat
57
58 8       First start of LyX
59
60         To start the just compiled lyx.exe, it is necessary to copy the following
61         files to the folder where the just compiled "lyx.exe" is:
62
63         Aiksaurus.dll
64         aspell.dll
65         iconv.dll
66         intl.dll
67         Microsoft.VC80.CRT.manifest
68         msvcp80.dll
69         msvcr80.dll
70         QtCore4.dll
71         QtGui4.dll
72
73         All files except of the msvcp80.dll and msvcr80.dll should be present on your system.
74         The missing files can be downloaded from:
75         http://wiki.lyx.org/uploads/DevelTools/buildLyx/LyXWinBuildDLLs.zip
76         (Currently there is a bug in the aspell.dll, so use the version that is delivered in this zip-file.)
77
78         msvcp80.dll and msvcr80.dll are the C Runtime and C++ libraries
79         supplied with MSVC 2005. They are freely redistributable.
80         See http://msdn2.microsoft.com/en-us/library/8kche8ah(VS.80).aspx
81         for details.
82
83         All of the other .dlls above and the lyx executable are compiled
84         from code released under the GPL which states (section 3) that
85         GPL software may be linked against system files such as msvcp80.dll
86         and msvcr80.dll.
87
88 Compiling with MinGW
89 ====================
90
91 1       Install MinGW, and all the gcc-related stuff, and win32api. 
92
93 2       download qt-win-opensource-4.x.x-mingw.exe and install to c:\qt\4.2.2.
94
95 3       install python and scons as instructed above. Set $path for python
96            to make your life a bit easier.
97
98 4       Check out lyx svn to c:\lyx-devel\lyx-1.5.x
99
100 5       Download zlib binaries and developer files (zlib-1.2.3-bin.zip and
101            zlib-1.2.3-lib.zip) from http://gnuwin32.sourceforge.net/packages/zlib.htm
102            libiconv from http://gnuwin32.sourceforge.net/packages/libiconv.htm
103            gettext  from http://gnuwin32.sourceforge.net/packages/gettext.htm
104            unpack all of them to the same directory c:\lyx-devel\mingw_deps.
105
106 6       start a command window, run commands:
107            $ cd c:\lyx-devel\lyx-1.5.x
108            $ scons -f development\scons\SConstruct \
109                extra_lib_path=..\mingw_deps\lib  \
110                    extra_inc_path=..\mingw_deps\include \
111                    extra_bin_path=..\mingw_deps\bin \
112                    qt_dir=c:\qt\4.2.2 \
113                    DESTDIR=..\lyx-1.5-install \
114                    install
115
116
117 Creating the Installer
118 ======================
119
120         To create an installer with LyX and all related components, download
121         and install the latest NSIS from http://nsis.sourceforge.net
122
123         Open development\Win32\packaging\installer\setttings.user.nsh and modify
124         the settings depending on your build environment.
125
126         Finally, go to development\Win32\packaging\installer
127         (in a normal Windows Explorer), right-click on lyx.nsi and click
128         "Compile NSIS Script".
129
130         You can also use the installer target of scons. Namely, use a command like
131            $ scons -f development\scons\SConscript installer
132         This will create $BUILDDIR\lyx-version-timestamp-Installer.exe for a devel version,
133         and $BUILDDIR\lyx-version-Install.exe for a released version of lyx.
134
135         If you also want to generate bundled installer, download 
136         lyx-windows-bundle-deps.zip from http://www.lyx.org/~bpeng, unpack
137         to lyx-windows-bundle-deps under the top source directory, and run
138           $ scons -f development\scons\SConstruct installer bundle=1
139         If you prefer to use another directory, you can use option bundle_dir like
140           $ scons -f development\scons\SConstruct installer bundle=1 bundle_dir=c:\bundle