X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=INSTALL.Win32;h=1bf76097802de2d30be448a17679d77140a3d3e1;hb=d9c52c7a3f06ec892cd2e36d0d20998bc99b2fd8;hp=5a4d578a81000de04ace9b1af95352d8ed3c9582;hpb=53064b49e8e5ec08ee282284c8daaed2146c3579;p=lyx.git diff --git a/INSTALL.Win32 b/INSTALL.Win32 index 5a4d578a81..1bf7609780 100644 --- a/INSTALL.Win32 +++ b/INSTALL.Win32 @@ -1,125 +1,179 @@ -Compiling LyX 1.6 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. -LyX 1.6 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. +2 Install Qt -Compiling with MSVC 2008 -======================== + 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. -1 Install MSVC 2008 +3 Install Python - If you don't have MSVC 2008 installed, download and install the free - Express edition from http://www.microsoft.com/express/vc/ + Install the latest Python 2.x or 3.x version from + https://www.python.org/downloads/ -2 Install Python +4 Install CMake - Get the latest Python 2.6 version at - http://www.python.org/download/ + Install the latest CMake from http://www.cmake.org - Install in C:\Python26 and add this directory to the PATH environment - variable (Start > Settings > Control Panel > System > Advanced > - Environment Variables). +5 Configure -3 Install SCons + - 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. - Download the latest SCons version from http://www.scons.org/download.php + - 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. -4 Install the dependencies + - Set LYX_USE_QT to QT5 and click Configure. - 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. + If you installed the dependencies manually, set GNUWIN32_DIR instead + to the folder that contains the dependencies and click Configure. -5 Compile + - Enable the LYX_INSTALL option 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: + - Click Generate. - cd \development\Win32\packaging - build_msvc.bat +6 Compile -6 First start of LyX + 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. - 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: +7 Copy dependencies - Aiksaurus.dll - aspell.dll - iconv.dll - intl.dll - Microsoft.VC90.CRT.manifest - msvcp90.dll - msvcr90.dll - QtCore4.dll - QtGui4.dll + 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 - 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. + 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 - 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-23-build\LYX_INSTALLED\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-1.6.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-1.6.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-1.6-install \ - install + C:\LyX\lyx-23-build\LYX_INSTALLED\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. + - 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 - 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