]> git.lyx.org Git - lyx.git/blobdiff - INSTALL.Win32
Update sk.po
[lyx.git] / INSTALL.Win32
index f69387b2a7ac9c52e4c0bbedb8ed7a91313f3d3d..66c85510631c9c15ace3370040394b69373e91c2 100644 (file)
-=================
-INSTALL for Win32
-=================
+Compiling LyX 2.4 for Win32 and creating Windows installer
+==========================================================
 
-LyX can be built with either MinGW/MSYS or Microsoft Visual Studio. The
-instructions below describe the detailed steps needed to set up a MinGW/MSYS
-environment ready to compile LyX. Several of these steps (installation of the
-third-party libraries) need to be performed for a MSVS build also but, of
-course, the details of how to do so are different. Nonetheless, we hope that
-the description below provides the MSVS developer with enough info to get
-started.
+It's recommended to compile LyX using Microsoft Visual C++ 2017 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-24
+       You can also use another directory if you prefer.
+
+1      Install MSVC 2017
+
+       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
 
-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. Once you've set up
-the build environment, actually building LyX should be straightforward. 
+       Download the latest Qt for Open Source C++ development on Windows (VS2017)
+       from https://qt.io/download-open-source/
+       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.
 
-The instructions below should guide you through the installation of the 
-MinGW/MSYS build environment, together with details on how to grab and build
-gettext, libiconv, qtwin, and aspell.
+3      Install Python
 
-Once you've done all that, you should go read the README in 
-development/Win32/packaging/ (MSVS users just open up development/Win32/lyx.sln
-and click Build) 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.
+       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"
 
-Enjoy!
-The LyX Team
+4      Install CMake
 
-=============================================================================
+       Install the latest CMake from http://www.cmake.org
 
-1 MinGW & MSYS
+5      Download dependencies
 
-1.1 Download the following packages from http://www.mingw.org/download.shtml:
+       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
 
-      binutils-2.16.91-...tar.gz
-      gcc-core-3.4.5-...tar.gz
-      gcc-g++-3.4.5-...tar.gz
-      mingw32-make-3.80.0-3.tar.gz
-      mingw-runtime-3.9.tar.gz
-      mingw-utils-0.3.tar.gz
-      MSYS-1.0.11-...exe
-      msys-autoconf-2.59.tar.bz2
-      msys-automake-1.8.2.tar.bz2
-      msysDTK-1.0.1.exe
-      msys-libtool-1.5.tar.bz2
-      w32api-3.6.tar.gz
+6      Configure
 
-1.2 Install in C:\MinGW
+       - 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 LYX_USE_QT to QT5 and click Configure.
+       
+       - You will now get an error about missing GNUWIN32 directory.
+
+       - 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
+
+       - Enable the LYX_INSTALL option and click Configure.
+
+       - Click Generate.
+
+7      Compile
+
+       A Microsoft Visual C++ solution should has been generated at
+       C:\LyX\lyx-23-build\lyx.sln
+       - 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
+
+9      Start LyX
+
+       C:\LyX\lyx-24-build\LYX_INSTALLED\bin\lyx.exe
+
+10     Define path prefix
+
+       In LyX use the menu Tools->Preferences
+       There input the the following the the field "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.
+
+
+Creating the Installer
+======================
+
+       - Get NSIS from http://nsis.sourceforge.net
+       - In the LyX source directory, go to development\Win32\packaging\installer
+       - Follow the steps in the file Readme.txt
+
+
+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
 
-      binutils, gcc-core, gcc-g++, mingw32-make, mingw-runtime,
-      mingw-utils, w32api
-
-1.3 Install in C:\msys
-
-      MSYS, msys-autoconf, msys-automake, msysDTK, msys-libtool
-
-
-2 Gettext 
-
-2.1 Download the following package from http://www.gnu.org/software/gettext:
-
-      gettext-0.14.5.tar.gz
-
-2.2 Extract the package in your home directory and run
-
-      ./configure --disable-shared --prefix=/mingw
-      make
-      make install
-
-
-3 Libiconv
-
-3.1 Download the following package from http://www.gnu.org/software/libiconv:
-
-      libiconv-1.10.tar.gz
-
-3.2 Extract the package in your home directory and run
-
-      ./configure --prefix=/mingw
-      make
-      make install
-
-
-4 QTWIN (see http://sourceforge.net/projects/qtwin)
-
-4.1 Get the latest CVS version
-
-    Using the cvs executable that is packaged with MSYS,
-    from the MSYS command prompt:
-
-      cvs -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/qtwin login
-      <return> (i.e., no password)
-      cvs -z3 -d :pserver:anonymous@cvs.sourceforge.net:/cvsroot/qtwin co \
-         -r QT_WIN32_3_3_BRANCH qt-3
-
-4.2 Compile the qtwin library
-
-    Open a Windows command line (run cmd.exe) and enter 
-
-      cd <path_to_your_qtwin_dir>
-      set QMAKESPEC=win32-g++
-      setenv.bat
-      configure.bat -release
-
-
-5. Aspell
-
-5.1 Download the following package from http://aspell.net/
-
-      aspell-0.60.4.tar.gz
-
-5.2 Extract the package in your home directory. 
-
-    Use development/Win32/packaging/build_aspell.sh to build Aspell now. 
-
-5.3 You can download pre-compiled aspell dictionaries from 
-    http://wiki.lyx.org/Windows/Aspell6
-
-
-6. LyX
-
-6.1 As mentioned above, read the README in development/Win32/packaging.
-
-=============================================================================