X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=INSTALL.Win32;h=f5d8b04e4113f85c31adbc09ae029b2db15ffc2f;hb=e3625b5b8052e75e8741152bdfd313b54969c675;hp=aa8de01234a506eeca65f9068ebfbd1030d8c4db;hpb=c82801cc7939a52ebdb650610a46993d991874ef;p=lyx.git diff --git a/INSTALL.Win32 b/INSTALL.Win32 index aa8de01234..f5d8b04e41 100644 --- a/INSTALL.Win32 +++ b/INSTALL.Win32 @@ -1,125 +1,153 @@ -Compiling LyX 1.6 for Win32 -=========================== +Compiling LyX 2.3 for Win32 and creating Windows installer +========================================================== -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. +It's recommended to compile LyX using Microsoft Visual C++ 2015 and CMake. -Compiling with MSVC 2008 -======================== -1 Install MSVC 2008 +Compiling with Microsoft Visual C++ +=================================== - If you don't have MSVC 2008 installed, download and install the free - Express edition from http://www.microsoft.com/express/vc/ + These instructions assume the LyX source code is in C:\LyX\lyx-23 + You can also use another directory if you prefer. -2 Install Python +1 Install MSVC 2015 - Get the latest Python 2.5 version at - http://www.python.org/download/ + If you don't have Visual C++ 2015 installed, get the free Community edition + from https://www.visualstudio.com/ - Install in C:\Python25 and add this directory to the PATH environment - variable (Start > Settings > Control Panel > System > Advanced > - Environment Variables). +2 Install Qt -3 Install SCons + 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. + 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. - Download the latest SCons version from http://www.scons.org/download.php +3 Install Python -4 Install the dependencies + Install the latest Python 2.x or 3.x version from + https://www.python.org/downloads/ - 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.). +4 Install CMake -5 Compile + Install the latest CMake from http://www.cmake.org - 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: +5 Configure - cd \development\Win32\packaging - build_msvc.bat + - 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. + The MSVC 2015 command prompt or vcvarsall.bat set some environment + variables that are needed for CMake to find the compiler. -6 First start of LyX + - 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. - 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: + - Enable LYX_DEPENDENCIES_DOWNLOAD and click Configure. + Pre-compiled dependencies will automatically be downloaded. - Aiksaurus.dll - aspell.dll - iconv.dll - intl.dll - Microsoft.VC90.CRT.manifest - msvcp90.dll - msvcr90.dll - QtCore4.dll - QtGui4.dll + - Enable the LYX_INSTALL option, set CMAKE_INSTALL_PREFIX to + C:\LyX\lyx-23-install and click Configure. - 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. + - 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. - 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. + - Click Generate. -Compiling with MinGW -==================== +6 Compile - 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. + 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-install -1 Install MinGW, and all the gcc-related stuff, and win32api. +7 Copy dependencies -2 download qt-win-opensource-4.x.x-mingw.exe and install to c:\qt. + 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 -3 install python and scons as instructed above. Set $path for python - to make your life a bit easier. + 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 -4 Check out lyx svn to c:\lyx-devel\lyx-1.6.x +8 Define path prefix -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. + 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: -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 + \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 -====================== +9 Start LyX - To create an installer with LyX and all related components, download - and install the latest NSIS from http://nsis.sourceforge.net + C:\LyX\lyx-23-install\bin\lyx.exe - 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". +Creating the Installer +====================== - 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