-Compiling LyX 2.3 for Win32 and creating Windows installer
+Compiling LyX 2.4 for Win32 and creating Windows installer
==========================================================
-It's recommended to compile LyX using Microsoft Visual C++ 2015 and CMake.
+It's recommended to compile LyX using Microsoft Visual C++ 2017 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-23
+ 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-24
You can also use another directory if you prefer.
-1 Install MSVC 2015
+1 Install MSVC 2017
- If you don't have Visual C++ 2015 installed, get the free Community edition
- from https://www.visualstudio.com/
+ If you don't have Visual C++ 2017 installed, get the free Community edition
+ from https://visualstudio.microsoft.com/thank-you-downloading-visual-studio/?sku=Community&rel=15
2 Install Qt
- Download the latest Qt for Open Source C++ development on Windows (VS2015)
+ Download the latest Qt for Open Source C++ development on Windows (VS2017)
from https://qt.io/download-open-source/
- Qt 5.6.x is recommended, but 5.7.x or later versions should work as well.
+ Qt 5.12.x is recommended, but 5.9.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.
3 Install Python
- Install the latest Python 2.x or 3.x version from
+ Install the latest Python 3.x version from
https://www.python.org/downloads/
+ Assure that you use the installer option "Add Python 3.x to PATH"
4 Install CMake
Install the latest CMake from http://www.cmake.org
-5 Configure
+5 Download dependencies
- - Run the CMake GUI.
+ Download the LyX for Windows build dependencies from
+ ftp.lyx.de/LyXWinInstaller/lyx-windows-deps-msvc2017.zip
+ and extract it e.g. to
+ C:\LyX\lyx-24\lyx-windows-deps-msvc2017
- - 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.
+6 Configure
- - Enable LYX_DEPENDENCIES_DOWNLOAD and click Configure.
- Pre-compiled dependencies will automatically be downloaded.
+ - Open the CMake GUI
+
+ - Set the source code path to C:\LyX\lyx-24
+ Set the build path to C:\LyX\lyx-24-build
+ Click Configure and set the generator to "Visual Studio 15 2017" to
+ build a 32bit LyX or add the x64 option to build a 64bit LyX.
- - Set QT_QMAKE_EXECUTABLE to e.g.
- C:\Qt\qt-everywhere-opensource-src-5.6.1\bin\qmake.exe
- and Configure again.
+ - Set LYX_USE_QT to QT5 and click Configure.
+
+ - You will now get an error about missing GNUWIN32 directory.
- - Enable the LYX_INSTALL option, set CMAKE_INSTALL_PREFIX to
- C:\LyX\lyx-23-install and click Configure.
+ - Set GNUWIN32_DIR to the folder that contains the dependencies.
+ (This alternative does currently not work:
+ Enable LYX_DEPENDENCIES_DOWNLOAD and click Configure.
+ Pre-compiled dependencies will automatically be downloaded.)
+
+ - set CMAKE_PREFIX_PATH to the path of Qt
+ e.g. to C:/Qt/Qt5.12.5/5.12.5/msvc2017
- - Check the Advanced checkbox.
- Set GETTEXT_MSGFMT_EXECUTABLE to
- C:\LyX\lyx-23-build\msvc2015-deps\lyx-windows-deps-msvc2015\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
+7 Compile
- A Microsoft Visual C++ solution should have been generated at
+ A Microsoft Visual C++ solution should has been generated at
C:\LyX\lyx-23-build\lyx.sln
- Compile the INSTALL project to get a LyX installation in
- C:\LyX\lyx-23-install
+ - Open the lyx.sln by double-clicking on it
+ - Use the menu BUILD -> Build Solution
+
+8 Copy dependencies
+
+ - Copy these folders:
+ C:\LyX\lyx-24\lyx-windows-deps-msvc2017\bin
+ C:\LyX\lyx-24\lyx-windows-deps-msvc2017\imagemagick
+ C:\LyX\lyx-24\lyx-windows-deps-msvc2017\Python
+ C:\LyX\lyx-24\lyx-windows-deps-msvc2017\ghostscript
+ C:\LyX\lyx-24\lyx-windows-deps-msvc2017\Resources
+ to C:\LyX\lyx-24-build\LYX_INSTALLED
+ (allow the request to overwrite)
+
+ - Copy from the Qt bin directory (see section 2 "Install Qt" above) these files:
+ 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-24-build\LYX_INSTALLED\bin
+
+ - Copy from this Qt directory
+ C:\Qt\Qt5.12.5\5.12.5\msvc2017\plugins
+ these subdirectories:
+ iconengines
+ imageformats
+ platforms
+ styles
+ to C:\LyX\lyx-24-build\LYX_INSTALLED\bin
-7 Copy dependencies
-
- Copy
- - 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-install
+9 Start LyX
- And copy from the Qt bin directory
- (e.g. C:\Qt\bin)
- QtCore5.dll
- QtGui5.dll
- QtCore5d.dll (if compiling Debug version)
- QtGui5d.dll (if compiling Debug version)
- to C:\LyX\lyx-23-install\bin
+ C:\LyX\lyx-24-build\LYX_INSTALLED\bin\lyx.exe
-8 Define path prefix
+10 Define path prefix
- Add the following line to C:\LyX\lyx-23-install\Resources\lyxrc.dist,
- so LyX will find the bundled tools such as Python, ImageMagick
- and Ghostscript:
+ In LyX use the menu Tools->Preferences
+ There input the the following the the field "Path prefix":
- \path_prefix "$LyXDir\bin;$LyXDir\python;$LyXDir\imagemagick;$LyXDir\ghostscript"
+ "$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-23-install\bin\lyx.exe
-
Creating the Installer
======================
- Get NSIS from http://nsis.sourceforge.net
- In the LyX source directory, go to development\Win32\packaging\installer
- - Copy the 3 dll-files from there to the DLL folder of the NSIS installation
- - Check whether the file locations/paths in settings.nsh match your setup.
- - Right-click on lyx.nsi and click "Compile NSIS Script".
+ - Follow the steps in the file Readme.txt
Compiling with GCC with MinGW64 + MSYS2 Environment using autotools