X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=INSTALL.Win32;h=1bf76097802de2d30be448a17679d77140a3d3e1;hb=580efe45ab424622c01f5666650b8be0cd59c257;hp=ed6a2c75d654c8255a098274e8d5041ef0d1ad2b;hpb=0aab8ead34b4128c27e5452294fc08810d658364;p=lyx.git diff --git a/INSTALL.Win32 b/INSTALL.Win32 index ed6a2c75d6..1bf7609780 100644 --- a/INSTALL.Win32 +++ b/INSTALL.Win32 @@ -1,141 +1,179 @@ -================= -INSTALL for Win32 -================= +Compiling LyX 2.3 for Win32 and creating Windows installer +========================================================== + +It's recommended to compile LyX using Microsoft Visual C++ 2015 and CMake. + + +Compiling with Microsoft Visual C++ (MSVC) +=================================== + + 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 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. -Building LyX the first time can appear to be a daunting task, but much of -that is knowing which packages to download in the first place. +2 Install Qt + + 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 or 3.x version from + https://www.python.org/downloads/ + +4 Install CMake + + Install the latest CMake from http://www.cmake.org + +5 Configure + + - 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. + If you installed the dependencies manually, set GNUWIN32_DIR instead + to the folder that contains the dependencies and click Configure. + + - 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-23-build\lyx.sln + Compile the INSTALL project to get a LyX installation in + C:\LyX\lyx-23-build\LYX_INSTALLED. + +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-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-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" + + 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-build\LYX_INSTALLED\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". + + +Compiling with GCC with MinGW64 + MSYS2 Environment using autotools +=================================================================== +1 Install MSYS2, MINGW64, Qt5+ + https://wiki.qt.io/MSYS2 +2 Install bc (Bench calculater), which autotools uses for some reason to compile LyX + pacman -S bc +3 Run the standard autotools install (Adapt paths and arguments accordingly) + ./autogen.sh + ./configure --without-x --enable-qt5 --disable-debug --enable-optimization --prefix=/mingw64 + make + make install + + +Cross-Compiling on unix with MXE using autotools +================================================= +1 Install MXE: http://mxe.cc + You can either install from sources, the generic .tar binaries or debian .deb packages. + Installing the following .deb packages will drag in all needed dependencies: + mxe-x86-64-w64-mingw32.shared-file + mxe-x86-64-w64-mingw32.shared-gcc + mxe-x86-64-w64-mingw32.shared-libiconv + mxe-x86-64-w64-mingw32.shared-qtimageformats + mxe-x86-64-w64-mingw32.shared-qtsvg + mxe-x86-64-w64-mingw32.shared-qtwinextras + Of course you can also use the static and/or 32bit versions. +2 Run the standard autotools install (Adapt paths and arguments accordingly) + ./autogen.sh + mkdir builddir-mingw + cd builddir-mingw + PATH="/usr/lib/mxe/usr/bin:$PATH" ../configure --host=x86-64-w64-mingw32.shared --with-qt-dir=/usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5 --enable-qt5 --with-included-boost --with-included-hunspell --with-included-mythes --disable-debug --enable-optimization --prefix=/mingw64 + PATH="/usr/lib/mxe/usr/bin:$PATH" make + PATH="/usr/lib/mxe/usr/bin:$PATH" DESTDIR=/tmp/lyxinstall make install + This uses the paths from the 64bit shared MXE version installed from .deb packages. +3 If you want to run the resulting lyx.exe from the build directory using wine, + create symlinks for all needed .dlls: + cd builddir-mingw/src + ln -s /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/bin/*.dll . + ln -s /usr/lib/mxe/usr/x86_64-w64-mingw32.shared/qt5/bin/*.dll . + wine64 lyx.exe -The instructions below should guide you through the installation of -the MinGW/MinSYS build environment, together with details on how to -grab and build the Qt toolkit and how to grab Aspell and LyX. - -Once you've done all that, you should go read the README in -development/Win32/packaging/ The two scripts in the same directory, -build_lyxwin.sh and package_lyxwin.sh should automate the entire -build process. If not and you really can't figure out what to do next, -then please, please drop a mail to lyx-devel@lists.lyx.org. - -Enjoy! -The LyX Team - -============================================================================= -1 MinGW & MSYS - -1.1 Download the following packages from http://www.mingw.org/download.shtml: - - MinGW-3.2.0-rc-3.exe - binutils-2.15.94-20050118-1.tar.gz - MSYS-1.0.11-2004.04.30-1.exe - msysDTK-1.0.1.exe - -1.2 Install MinGW-3.2.0-rc-3.exe in C:\MinGW - -1.3 Install MSYS-1.0.11-2004.04.30-1.exe in C:\msys - -1.4 Install msysDTK-1.0.1 in C:\msys - -1.5 Extract binutils-2.15.94-20050118-1.tar.gz in C:\MinGW - (i.e., overwrite the existing binutils) - - -2. Gettext & Libiconv - -2.1 Download the following packages from - http://www.gnu.org/software/gettext/gettext.html: - - gettext-tools-0.13.1.bin.woe32.zip - gettext-runtime-0.13.1.bin.woe32.zip - libiconv-1.9.1.bin.woe32.zip - -2.2 Extract the three packages in C:\MinGW - - - -3 QT/Win Free Edition - http://qtwin.sourceforge.net/index.php/QT/Free_from_CVS_with_Mingw - -3.1 Get the latest CVS version - - Using the cvs executable that is packaged with MinSYS, - from the MinSYS command prompt: - - $ cd ~ - $ cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kde-cygwin login - (no password) - $ cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/kde-cygwin co \ - -r QT_WIN32_3_3_BRANCH -d qt3 qt-3 - - Alternatively, use the TortoiseCVS graphical interface. - -3.2 Compile the QT library - - Create two .bat files, in the top-level directory of the Qt tree, - my_configure.bat and my_make.bat. Mine are shown below. Obviously, - you'll have to tweak them ;-) - - $ cat my_configure.bat - set QTDIR=J:\MinSys\home\Angus\qt3 - set MINGW=J:\MinGW - set PATH=J:\MinSys\home\Angus\qt3\bin;J:\MinGW\bin;C:\WINDOWS\system32;C:\WINDOWS - set QMAKESPEC=win32-g++ - configure.bat -verbose - - $ cat my_make.bat - set QTDIR=J:\MinSys\home\Angus\qt3 - set MINGW=J:\MinGW - set PATH=J:\MinSys\home\Angus\qt3\bin;J:\MinGW\bin;C:\WINDOWS\system32;C:\WINDOWS - set QMAKESPEC=win32-g++ - mingw32-make symlinks - mingw32-make src-moc - mingw32-make sub-src - - The first time that you build the Qt sources, run my_configure.bat. - Thereafter, you should be able to get away with my_make.bat. If it fails, - you should try my_configure.bat again, but this will overwrite all the - Qt header files, so you'll end up rebuilding large chunks of LyX as well. - - $ cmd.exe - PROMPT> my_configure.bat - -4. Aspell - -4.1 Download aspell-0.50.5.tar.gz from ftp://ftp.gnu.org/gnu/aspell/ - (note: version 0.60.2 does not compile) - Download dictionaries from ftp://ftp.gnu.org/gnu/aspell/dict/ - Eg: en/aspell-en-0.50-2.tar.bz2 - de/aspell-de-0.50-2.tar.bz2 - -4.2 Extract all files in your MSYS home directory. From the - MinSYS command prompt: - - $ gunzip aspell-0.50.5.tar.gz - $ bunzip2 aspell-en-0.50-2.tar.bz2 - $ tar xvf aspell-0.50.5.tar - $ tar xvf aspell-en-0.50-2.tar - $ rm -f aspell-0.50.5.tar - $ rm -f aspell-en-0.50-2.tar - - There's no need to build Aspell now. The script in - development/Win32/packaging should do it for you. - -5. LyX - -5.1 Get the latest CVS version - - Using the cvs executable that is packaged with MinSYS, - from the MinSYS command prompt: - - $ cd ~ - $ mkdir lyx && cd lyx - $ cvs -d:pserver:anoncvs@anoncvs.us.lyx.org:/cvs/lyx login - (The password is "lyx" (no inverted commas)) - $ cvs -d:pserver:anoncvs@anoncvs.us.lyx.org:/cvs/lyx \ - checkout -r BRANCH_1_3_X -d 13x lyx-devel - - Alternatively, use the TortoiseCVS graphical interface. - - There's no need to build LyX now. The script in - development/Win32/packaging should do it for you. - -Now go read the README in development/Win32/packaging. -=============================================================================