updated compile instructions for the MSVC 2010 / CMake environment

git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@37711 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
Joost Verburg 2011-02-17 15:55:59 +00:00
parent 2d7cf03935
commit 9129a70941

View File

@ -1,125 +1,106 @@
Compiling LyX 2.0 for Win32
===========================
LyX 2.0 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/
These instructions assume the LyX source code is installed in C:\LyX\lyx-20
You can also use another directory if you prefer.
2 Install Python
1 Install MSVC 2010
Get the latest Python 2.6 version at
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.7/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.
3 Install Python
Install the latest Python 2.x version from
http://www.python.org/download/
Install in C:\Python26 and add this directory to the PATH environment
variable (Start > Settings > Control Panel > System > Advanced >
Environment Variables).
4 Install CMake
3 Install SCons
Install the latest CMake from http://www.cmake.org
Download the latest SCons version from http://www.scons.org/download.php
5 Configure
4 Install the dependencies
- Run the CMake GUI.
- Set the source code path to C:\LyX\lyx-20\development\cmake
Set the build path to C:\LyX\lyx-20-build
Click Configure and set the generator to Visual Studio 10.
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.).
- Enable LYX_DEPENDENCIES_DOWNLOAD and click Configure.
Pre-compiled dependencies will automatically be downloaded.
- Set QT_QMAKE_EXECUTABLE to e.g.
C:\Qt\qt-everywhere-opensource-src-4.7.1\bin\qmake.exe
and Configure again.
5 Compile
- Enable the LYX_INSTALL option, set CMAKE_INSTALL_PREFIX to
C:\LyX\lyx-20-install and click 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:
- Check the Advanced checkbox.
Set GETTEXT_MSGFMT_EXECUTABLE to
C:\LyX\lyx-20-build\msvc2010-deps\deps20\gettext-tools\msgfmt.exe,
and do the same for the other gettext tools.
cd <lyx root directory>\development\Win32\packaging
build_msvc.bat
- Click Generate.
6 First start of LyX
6 Compile
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:
A Microsoft Visual C++ solution should have been generated at
C:\LyX\lyx-20-build\lyx.sln
Compile the INSTALL project to get a LyX installation in
C:\LyX\lyx-20-install
Aiksaurus.dll
aspell.dll
iconv.dll
intl.dll
Microsoft.VC90.CRT.manifest
msvcp90.dll
msvcr90.dll
7 Copy dependencies
Copy
- C:\LyX\lyx-20-build\msvc2010-deps\deps20\bin
- C:\LyX\lyx-20-build\msvc2010-deps\deps20\imagemagick
- C:\LyX\lyx-20-build\msvc2010-deps\deps20\python
- C:\LyX\lyx-20-build\msvc2010-deps\deps20\ghostscript
- C:\LyX\lyx-20-build\msvc2010-deps\deps20\Resources
to C:\LyX\lyx-20-install
And copy from the Qt bin directory
(e.g. C:\Qt\qt-everywhere-opensource-src-4.7.1\bin)
QtCore4.dll
QtGui4.dll
QtCore4d.dll (if compiling Debug version)
QtGui4d.dll (if compiling Debug version)
to C:\LyX\lyx-20-install\bin
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.
8 Define path prefix
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.
Add the following line to C:\LyX\lyx-20-install\Resources\lyxrc.dist,
so LyX will find the bundled tools such as Python, ImageMagick
and Ghostscript:
Compiling with MinGW
====================
\path_prefix "$LyXDir\bin;$LyXDir\python;$LyXDir\imagemagick;$LyXDir\ghostscript"
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.
You may also add the location of your LaTeX installation if it's not on the
system PATH, and the location of JabRef.
1 Install MinGW, and all the gcc-related stuff, and win32api.
9 Start LyX
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-2.0.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-2.0.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-2.0-install \
install
C:\LyX\lyx-20-install\bin\lyx.exe
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
The installer for LyX 2.0 is currently being developed.