updated compile instructions for the MSVC 2010 / CMake environment

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/branches/BRANCH_1_6_X@37655 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Joost Verburg 2011-02-14 15:30:47 +00:00
parent a89c67907b
commit 2bb2756a65

View File

@ -1,125 +1,107 @@
Compiling LyX 1.6 for Win32
===========================
LyX 1.6 can be compiled with Microsoft Visual C++ 2008 (recommended) or MinGW.
Note that you should not have spaces in the path of the source code.
It's recommended to compile LyX using Microsoft Visual C++ 2010 and CMake.
Pre-compiled packages with dependencies are provided for this environment.
Compiling with MSVC 2008
========================
1 Install MSVC 2008
Compiling with Microsoft Visual C++
===================================
If you don't have MSVC 2008 installed, download and install the free
Express edition from http://www.microsoft.com/express/vc/
Copy the LyX source code to C:\LyX\lyx-16
Some of the build scripts currently have issues with longer paths.
1 Install MSVC 2010
If you don't have Visual C++ 2010 installed, get the free Express edition from
http://www.microsoft.com/express/Downloads/
2 Compile Qt
Download the latest Qt everywhere open source version from
http://get.qt.nokia.com/qt/source/ (e.g. qt-everywhere-opensource-src-4.7.1.zip).
Follow the instructions on http://doc.qt.nokia.com/4.6/install-win.html to
compile using MSVC 2010.
The pre-compiled version of Qt cannot be used. It uses the 2008 version of the
MSVC runtime which will result in crashes.
2 Install Python
Get the latest Python 2.5 version at
Install the latest Python 2.x version from
http://www.python.org/download/
Install in C:\Python25 and add this directory to the PATH environment
variable (Start > Settings > Control Panel > System > Advanced >
Environment Variables).
3 Install CMake
3 Install SCons
Download the latest SCons version from http://www.scons.org/download.php
Install the latest CMake from http://www.cmake.org
4 Install the dependencies
Download ftp://ftp.lyx.org/pub/lyx/contrib/lyx-windows-deps-msvc2008.zip
and extract in the root directory of your LyX files (so you will get
a directory called lyx-windows-deps-msvc2008 next to the other directories
like src, development etc.).
Download
ftp://ftp.devel.lyx.org/pub/contrib/windows/lyx16-deps-msvc2010-x86.zip
Extract this file in the C:\LyX directory and verify that C:\LyX\deps
has been created.
5 Compile
5 Configure
Start a Visual Studio command prompt (Start > Programs >
Microsoft Visual C++ 9.0 Express Edition > Visual Studio Tools >
Visual Studio 2008 Command Prompt) and run:
- Run the CMake GUI.
- Set the source code path to C:\LyX\lyx-16\development\cmake
Set the build path to C:\LyX\lyx-16-build
Click Configure and set the generator to Visual Studio 10.
cd <lyx root directory>\development\Win32\packaging
build_msvc.bat
- Set GNUWIN32_DIR to C:\LyX\deps and click Configure again.
- Set QT_QMAKE_EXECUTABLE to e.g.
C:\Qt\qt-everywhere-opensource-src-4.7.1\bin\qmake.exe
and Configure again.
6 First start of LyX
- Enable the LYX_INSTALL option, set CMAKE_INSTALL_PREFIX to
C:\LyX\lyx-16-install and click Configure.
- Set GETTEXT_MSGFMT_EXECUTABLE to C:\LyX\deps\bin\msgfmt.exe,
GETTEXT_MSGMERGE_EXECUTABLE to C:\LyX\deps\bin\msgmerge.exe
etc. and click Configure.
- Click Generate.
6 Compile
A Microsoft Visual C++ solution should have been generated at
C:\LyX\lyx-16-build\lyx16.sln
Compile the INSTALL project to get a LyX installation in
C:\LyX\lyx-16-install
6 Start 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:
files to C:\LyX\lyx-16-install\bin
from C:\LyX\deps\bin:
Aiksaurus.dll
aspell.dll
aspelld.dll (if compiling Debug version)
iconv.dll
intl.dll
Microsoft.VC90.CRT.manifest
msvcp90.dll
msvcr90.dll
zlibwapi.dll
msvcp100.dll
msvcr100.dll
From C:\Qt\qt-everywhere-opensource-src-4.7.1\bin:
(directory depends on your Qt version)
QtCore4.dll
QtGui4.dll
msvcp90.dll and msvcr90.dll are the C Runtime and C++ libraries
supplied with MSVC 2008. They are freely redistributable.
See http://msdn2.microsoft.com/en-us/library/8kche8ah.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 msvcp90.dll
and msvcr90.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 2008 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.
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.6.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.6.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 \
DESTDIR=..\lyx-1.6-install \
install
QtCore4d.dll (if compiling Debug version)
QtGui4d.dll (if compiling Debug version)
Creating the Installer
======================
To create an installer with LyX and all related components, download
and install the latest NSIS from http://nsis.sourceforge.net
Get 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
Go to development\Win32\packaging\installer (in a normal Windows Explorer),
right-click on lyx.nsi and click "Compile NSIS Script".
You may have to to modify some of the directories in include\declarations.nsh
if case you used non-standard locations.