-Compiling LyX 2.2 for Win32 and creating Windows installer
+Compiling LyX 2.3 for Win32 and creating Windows installer
==========================================================
-It's recommended to compile LyX using Microsoft Visual C++ 2010 and CMake.
-Pre-compiled packages with dependencies are provided for this environment.
+It's recommended to compile LyX using Microsoft Visual C++ 2015 and CMake.
-Compiling with Microsoft Visual C++
+Compiling with Microsoft Visual C++ (MSVC)
===================================
- These instructions assume the LyX source code is in C:\LyX\lyx-21
+ The easiest way to install LyX with MSVC is to follow this Wiki page:
+
+ http://wiki.lyx.org/Windows/Compilation
+
+ If you find there any errors please write a mail to the lyx-devel mailing list.
+
+----------------------------------------------------------------------------
+
+ The following instructions assume the LyX source code is in C:\LyX\lyx-23
You can also use another directory if you prefer.
-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/
-
- (All dependencies are linked against the MSVC 2010 runtime and won't work in
- combination with MSVC 2008. You'll get crashes and other unexpected issues.)
+1 Install MSVC 2015
+
+ If you don't have Visual C++ 2015 installed, get the free Community edition
+ from https://www.visualstudio.com/. Make sure that the following two
+ features are selected for installation:
+ - "Visual C++" from "Programming languages" (only the first option
+ "Common Tools for Visual C++ 2015" is needed)
+ - "Tools and Windows SDKs" from "Windows 8.1 and Windows Phone 8.0/8.1 Tools"
+ The latter one requires Windows 8.1. If you use an older windows version
+ please install the "Windows Software Development Kit (SDK) für Windows 8.1"
+ from https://developer.microsoft.com/en-us/windows/downloads/windows-8-1-sdk.
+ This version requires at least Windows 7.
+ If the build complains later that it cannot find the file
+ C:\Microsoft.Cpp.Default.props then the SDK is not installed properly.
2 Install Qt
- Download the latest Qt for Open Source C++ development on Windows (VS2010)
- from http://qt-project.org/downloads
+ Download the latest Qt for Open Source C++ development on Windows (VS2015)
+ from https://qt.io/download-open-source/
+ Qt 5.6.x is recommended, but 5.7.x or later versions should work as well.
+ If you want to build LyX as 32bit application, you need Qt x86.
+ If you want to build LyX as 64bit application, you need Qt x64.
+ Make sure that the bin subfolder of the Qt installation (e.g.
+ C:\Qt\Qt5.6.1\5.6\msvc2015\bin) is listed in the PATH environment variable.
3 Install Python
- Install the latest Python 2.x version (not Python 3.x !) from
- http://www.python.org/download/
+ Install the latest Python 2.x or 3.x version from
+ https://www.python.org/downloads/
4 Install CMake
5 Configure
- - Run the CMake GUI.
-
- - Set the source code path to C:\LyX\lyx-21
- Set the build path to C:\LyX\lyx-21-build
- Click Configure and set the generator to Visual Studio 10.
+ - Open the "Developer Command Prompt for VS2015" from the
+ "Visual Studio 2015\Visual Studio Tools" subfolder of the start menu.
+ Run the CMake GUI from the command window that was opened.
+ Alternatively, you can create a .bat file that first contains the line
+ call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86
+ and then calls the CMake GUI and use this .bat file to start CMake.
+ This is for building a 32bit LyX, if you want to build a 64bit LyX replace
+ 'x86' by 'amd64'.
+ The MSVC 2015 command prompt or vcvarsall.bat set some environment
+ variables that are needed for CMake to find the compiler.
+
+ - Set the source code path to C:\LyX\lyx-23
+ Set the build path to C:\LyX\lyx-23-build
+ Click Configure and set the generator to "Visual Studio 14 2015" to
+ build a 32bit LyX or "Visual Studio 14 2015 Win64" to build a 64bit LyX.
+
+ - Set LYX_USE_QT to QT5 and click Configure.
- 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.8.4\bin\qmake.exe
- and Configure again.
-
- - Enable the LYX_INSTALL option, set CMAKE_INSTALL_PREFIX to
- C:\LyX\lyx-21-install and click Configure.
+ If you installed the dependencies manually, set GNUWIN32_DIR instead
+ to the folder that contains the dependencies and click Configure.
- - Check the Advanced checkbox.
- Set GETTEXT_MSGFMT_EXECUTABLE to
- C:\LyX\lyx-21-build\msvc2010-deps\deps20\gettext-tools\msgfmt.exe,
- and do the same for the other gettext tools.
+ - Enable the LYX_INSTALL option and click Configure.
- Click Generate.
6 Compile
A Microsoft Visual C++ solution should have been generated at
- C:\LyX\lyx-21-build\lyx.sln
+ C:\LyX\lyx-23-build\lyx.sln
Compile the INSTALL project to get a LyX installation in
- C:\LyX\lyx-21-install
+ C:\LyX\lyx-23-build\LYX_INSTALLED.
7 Copy dependencies
Copy
- - C:\LyX\lyx-21-build\msvc2010-deps\deps20\bin
- - C:\LyX\lyx-21-build\msvc2010-deps\deps20\imagemagick
- - C:\LyX\lyx-21-build\msvc2010-deps\deps20\python
- - C:\LyX\lyx-21-build\msvc2010-deps\deps20\ghostscript
- - C:\LyX\lyx-21-build\msvc2010-deps\deps20\Resources
- to C:\LyX\lyx-21-install
-
- And copy from the Qt bin directory
- (e.g. C:\Qt\bin)
- QtCore4.dll
- QtGui4.dll
- QtCore4d.dll (if compiling Debug version)
- QtGui4d.dll (if compiling Debug version)
- to C:\LyX\lyx-21-install\bin
+ - C:\LyX\lyx-23-build\msvc2015-deps\lyx-windows-deps-msvc2015\bin
+ - C:\LyX\lyx-23-build\msvc2015-deps\lyx-windows-deps-msvc2015\imagemagick
+ - C:\LyX\lyx-23-build\msvc2015-deps\lyx-windows-deps-msvc2015\Python
+ - C:\LyX\lyx-23-build\msvc2015-deps\lyx-windows-deps-msvc2015\ghostscript
+ - C:\LyX\lyx-23-build\msvc2015-deps\lyx-windows-deps-msvc2015\Resources
+ to C:\LyX\lyx-23-build\LYX_INSTALLED
+
+ And copy from the Qt bin directory (see item 2 "Install Qt" above)
+ Qt5Core.dll
+ Qt5Gui.dll
+ Qt5Svg.dll
+ Qt5Widgets.dll
+ Qt5WinExtras.dll
+ Qt5Cored.dll (if compiling Debug version)
+ Qt5Guid.dll (if compiling Debug version)
+ Qt5Svgd.dll (if compiling Debug version)
+ Qt5Widgetsd.dll (if compiling Debug version)
+ Qt5WinExtrasd.dll (if compiling Debug version)
+ to C:\LyX\lyx-23-build\LYX_INSTALLED\bin
8 Define path prefix
- Add the following line to C:\LyX\lyx-21-install\Resources\lyxrc.dist,
+ Add the following line to C:\LyX\lyx-23-build\LYX_INSTALLED\Resources\lyxrc.dist,
so LyX will find the bundled tools such as Python, ImageMagick
and Ghostscript:
- \path_prefix "$LyXDir\bin;$LyXDir\python;$LyXDir\imagemagick;$LyXDir\ghostscript"
+ \path_prefix "$LyXDir\bin;$LyXDir\Python;$LyXDir\imagemagick;$LyXDir\ghostscript"
You may also add the location of your LaTeX installation if it's not on the
system PATH, and the location of JabRef.
9 Start LyX
- C:\LyX\lyx-21-install\bin\lyx.exe
+ C:\LyX\lyx-23-build\LYX_INSTALLED\bin\lyx.exe
Creating the Installer