Compiling LyX 1.5 for Win32 =========================== LyX 1.5 can be compiled with Microsoft Visual C++ 2005 (recommended) or MinGW. Compiling with MSVC 2005 ======================== 1 Install MSVC 2005 SP1 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. 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 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.) 3 Configure MSVC 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.) 4 Install Python Get the latest Python 2.5 version at http://www.python.org/download/releases/2.5/ Install in C:\Python25 and add this directory to the PATH environment variable (Start > Settings > Control Panel > System > Advanced > Environment Variables). 5 Install SCons Download and install SCons 0.96.92 (or newer, but not 0.96.1) from http://www.scons.org/download.php 6 Install the dependencies 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.). 7 Compile From MS Visual Studio command prompt (not the regular cmd.exe), run > cd \development\Win32\packaging > build_msvc.bat 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: Aiksaurus.dll aspell.dll iconv.dll intl.dll Microsoft.VC80.CRT.manifest msvcp80.dll msvcr80.dll QtCore4.dll QtGui4.dll 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. 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. Compiling with MinGW ==================== 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. 2 download qt-win-opensource-4.x.x-mingw.exe and install to c:\qt\4.2.2. 3 install python and scons as instructed above. Set $path for python to make your life a bit easier. 4 Check out lyx svn to c:\lyx-devel\lyx-1.5.x 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. 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 Creating the Installer ====================== To create an installer with LyX and all related components, download and install the latest NSIS from http://nsis.sourceforge.net Open development\Win32\packaging\installer\setttings.user.nsh and modify the settings depending on your build environment. Finally, go to development\Win32\packaging\installer (in a normal Windows Explorer), right-click on lyx.nsi and click "Compile NSIS Script". 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. 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