-=================
-INSTALL for Win32
-=================
+Compiling LyX 1.5 for Win32
+===========================
-LyX can be built with either MinGW/MSYS or Microsoft Visual Studio. The
-instructions below describe the detailed steps needed to set up a MinGW/MSYS
-environment ready to compile LyX. Several of these steps (installation of the
-third-party libraries) need to be performed for a MSVS build also but, of
-course, the details of how to do so are different. Nonetheless, we hope that
-the description below provides the MSVS developer with enough info to get
-started.
+LyX 1.5 can be compiled with Microsoft Visual C++ 2005 (recommended) or MinGW.
-Building LyX the first time can appear to be a daunting task but much of that
-is knowing which packages to download in the first place. Once you've set up
-the build environment, actually building LyX should be straightforward.
+Compiling with MSVC 2005
+========================
-The instructions below should guide you through the installation of the
-MinGW/MSYS build environment, together with details on how to grab and build
-gettext, libiconv, qtwin, and aspell.
+1 Install MSVC 2005 SP1
-Once you've done all that, you should go read the README in
-development/Win32/packaging/ (MSVS users just open up development/Win32/lyx.sln
-and click Build) The two scripts in the same directory, build_lyxwin.sh and
-package_lyxwin.sh should automate the entire build process. If not and you
-really can't figure out what to do next, then please, please drop a mail to
-lyx-devel@lists.lyx.org.
+ If you don't have MSVC 2005 installed, download and install the free
+ Express edition from http://msdn.microsoft.com/vstudio/express/visualc/
+ From this page you should also download and install Service Pack 1.
-Enjoy!
-The LyX Team
+ A hotfix needs to be installed because of a bug in the compiler.
+ Search for VS80sp1-KB930859-X86-ENU.exe on Google and install it.
-=============================================================================
+2 Install the Windows Platform SDK
-1 MinGW & MSYS
+ see: http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
+ (You don't need to install the IIS, MDAC, and Tablet PC SDK that are
+ delivered with the Platform SDK.)
-1.1 Download the following packages from http://www.mingw.org/download.shtml:
+3 Configure MSVC
- binutils-2.16.91-...tar.gz
- gcc-core-3.4.5-...tar.gz
- gcc-g++-3.4.5-...tar.gz
- mingw32-make-3.80.0-3.tar.gz
- mingw-runtime-3.9.tar.gz
- mingw-utils-0.3.tar.gz
- MSYS-1.0.11-...exe
- msys-autoconf-2.59.tar.bz2
- msys-automake-1.8.2.tar.bz2
- msysDTK-1.0.1.exe
- msys-libtool-1.5.tar.bz2
- w32api-3.6.tar.gz
+ Follow exactly the steps of
+ http://msdn.microsoft.com/vstudio/express/visualc/usingpsdk/
+ In Step 3 follow also the things noted as alternative.
+ (If you later get an error message that "windows.h" cannot be found,
+ create the global Windows environment variables "INCLUDE" and "LIB".
+ INCLUDE contains the paths to the "include" folders of the installed
+ platform SDK and of MSVC. LIB contains the corresponding "lib" folders.)
-1.2 Install in C:\MinGW
+4 Install Python
- binutils, gcc-core, gcc-g++, mingw32-make, mingw-runtime,
- mingw-utils, w32api
+ Get the latest Python 2.5 version at
+ http://www.python.org/download/releases/2.5/
-1.3 Install in C:\msys
+ Install in C:\Python25 and add this directory to the PATH environment
+ variable (Start > Settings > Control Panel > System > Advanced >
+ Environment Variables).
- MSYS, msys-autoconf, msys-automake, msysDTK, msys-libtool
+5 Install SCons
+ Download and install SCons 0.96.92 (or newer, but not 0.96.1) from http://www.scons.org/download.php
-2 Gettext
+6 Install the dependencies
-2.1 Download the following package from http://www.gnu.org/software/gettext:
+ Download ftp://ftp.lyx.org/pub/lyx/contrib/lyx-windows-deps-msvc-qt4.zip
+ and extract in the root directory of your LyX files (so you will get
+ a directory called lyx-windows-deps-msvc-qt4 next to the other directories
+ like src, development etc.).
- gettext-0.14.5.tar.gz
+7 Compile
-2.2 Extract the package in your home directory and run
+ From MS Visual Studio command prompt (not the regular cmd.exe),
+ run
+ > cd <lyx root directory>\development\Win32\packaging
+ > build_msvc.bat
- ./configure --disable-shared --prefix=/mingw
- make
- make install
+8 First start of LyX
+ To start the just compiled lyx.exe, it is necessary to copy the following
+ files to the folder where the just compiled "lyx.exe" is:
-3 Libiconv
+ Aiksaurus.dll
+ aspell.dll
+ iconv.dll
+ intl.dll
+ Microsoft.VC80.CRT.manifest
+ msvcp80.dll
+ msvcr80.dll
+ QtCore4.dll
+ QtGui4.dll
-3.1 Download the following package from http://www.gnu.org/software/libiconv:
+ msvcp80.dll and msvcr80.dll are the C Runtime and C++ libraries
+ supplied with MSVC 2005. They are freely redistributable.
+ See http://msdn2.microsoft.com/en-us/library/8kche8ah(VS.80).aspx
+ for details.
- libiconv-1.10.tar.gz
+ All of the other .dlls above and the lyx executable are compiled
+ from code released under the GPL which states (section 3) that
+ GPL software may be linked against system files such as msvcp80.dll
+ and msvcr80.dll.
-3.2 Extract the package in your home directory and run
+Compiling with MinGW
+====================
- ./configure --prefix=/mingw
- make
- make install
+ These instructions allow you to create a basic LyX build with MinGW.
+ To be able to use all LyX features, compiling with MSVC 2005 is recommended.
+ Creating an installer for MinGW builds is no longer supported.
+1 Install MinGW, and all the gcc-related stuff, and win32api.
-4 QTWIN (see http://sourceforge.net/projects/qtwin)
+2 download qt-win-opensource-4.x.x-mingw.exe and install to c:\qt\4.2.2.
-4.1 Get the latest CVS version
+3 install python and scons as instructed above. Set $path for python
+ to make your life a bit easier.
- Using the cvs executable that is packaged with MSYS,
- from the MSYS command prompt:
+4 Check out lyx svn to c:\lyx-devel\lyx-1.5.x
- cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/qtwin login
- <return> (i.e., no password)
- cvs -z3 -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/qtwin co \
- -r QT_WIN32_3_3_BRANCH qt-3
+5 Download zlib binaries and developer files (zlib-1.2.3-bin.zip and
+ zlib-1.2.3-lib.zip) from http://gnuwin32.sourceforge.net/packages/zlib.htm
+ libiconv from http://gnuwin32.sourceforge.net/packages/libiconv.htm
+ gettext from http://gnuwin32.sourceforge.net/packages/gettext.htm
+ unpack all of them to the same directory c:\lyx-devel\mingw_deps.
-4.2 Compile the qtwin library
+6 start a command window, run commands:
+ $ cd c:\lyx-devel\lyx-1.5.x
+ $ scons -f development\scons\SConstruct \
+ extra_lib_path=..\mingw_deps\lib \
+ extra_inc_path=..\mingw_deps\include \
+ extra_bin_path=..\mingw_deps\bin \
+ qt_dir=c:\qt\4.2.2 \
+ DESTDIR=..\lyx-1.5-install \
+ install
- Open a Windows command line (run cmd.exe) and enter
- cd <path_to_your_qtwin_dir>
- set QMAKESPEC=win32-g++
- setenv.bat
- configure.bat -release
+Creating the Installer
+======================
+ To create an installer with LyX and all related components, download
+ and install the latest NSIS from http://nsis.sourceforge.net
-5. Aspell
+ Open development\Win32\packaging\installer\setttings.user.nsh and modify
+ the settings depending on your build environment.
-5.1 Download the following package from http://aspell.net/
+ Finally, go to development\Win32\packaging\installer
+ (in a normal Windows Explorer), right-click on lyx.nsi and click
+ "Compile NSIS Script".
- aspell-0.60.4.tar.gz
+ You can also use the installer target of scons. Namely, use a command like
+ $ scons -f development\scons\SConscript installer
+ This will create $BUILDDIR\lyx-version-timestamp-Installer.exe for a devel version,
+ and $BUILDDIR\lyx-version-Install.exe for a released version of lyx.
-5.2 Extract the package in your home directory.
-
- Use development/Win32/packaging/build_aspell.sh to build Aspell now.
-
-5.3 You can download pre-compiled aspell dictionaries from
- http://wiki.lyx.org/Windows/Aspell6
-
-
-6. LyX
-
-6.1 As mentioned above, read the README in development/Win32/packaging.
-
-=============================================================================
+ If you also want to generate bundled installer, download
+ lyx-windows-bundle-deps.zip from http://www.lyx.org/~bpeng, unpack
+ to lyx-windows-bundle-deps under the top source directory, and run
+ $ scons -f development\scons\SConstruct installer bundle=1
+ If you prefer to use another directory, you can use option bundle_dir like
+ $ scons -f development\scons\SConstruct installer bundle=1 bundle_dir=c:\bundle