Okay, next step taken, I think.

I set a couple of paths in CMAKE. Here is the "Show My Changes" output:

---

Commandline options:
-DLYX_USE_QT:STRING="QT5" -DQt5Widgets_DIR:PATH="C:\Qt\Qt5.6.1\5.6\msvc2015\lib\cmake\Qt5Widgets" -DLYX_DEPENDENCIES_DOWNLOAD:BOOL="1" -DLYX_INSTALL:BOOL="1" -DQt5Core_DIR:PATH="C:\Qt\Qt5.6.1\5.6\msvc2015\lib\cmake\Qt5Core" -DQT_QMAKE_EXECUTABLE:FILEPATH="C:/Qt/Qt5.6.1/5.6/msvc2015/bin/qmake.exe" -DCMAKE_PREFIX_PATH:PATH="C:/Qt/Qt5.6.1/5.6/msvc2015" -DLYX_INSTALL_PREFIX:PATH="C:/LyX/lyx-23-install"


Cache file:
LYX_USE_QT:STRING=QT5
Qt5Widgets_DIR:PATH=C:\Qt\Qt5.6.1\5.6\msvc2015\lib\cmake\Qt5Widgets
LYX_DEPENDENCIES_DOWNLOAD:BOOL=1
LYX_INSTALL:BOOL=1
Qt5Core_DIR:PATH=C:\Qt\Qt5.6.1\5.6\msvc2015\lib\cmake\Qt5Core
QT_QMAKE_EXECUTABLE:FILEPATH=C:/Qt/Qt5.6.1/5.6/msvc2015/bin/qmake.exe
CMAKE_PREFIX_PATH:PATH=C:/Qt/Qt5.6.1/5.6/msvc2015
LYX_INSTALL_PREFIX:PATH=C:/LyX/lyx-23-install

---

Not sure whether some of the settings are redundant.

Compiling in Visual Studio resulted in

========== Build: 26 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========

Sounds good to me. Unfortunately, MSVC seems not to share my optimism and complains about a missing file (screen capture attached).

Nothing else happens.

What I noticed is that the directory C:\LyX\lyx-23-install is empty. Aren't there some files supposed to be or what is the directory for?

Next, I copy the dependencies. The culprit is, however, that there is no lyx.exe in C:\LyX\lyx-23-build\msvc2015-deps\lyx-windows-deps-msvc2015\bin... so I can't execute it.

Maybe I am compiling it wrongly in MSVC? I just open the INSTALL project time in the explorer and hit STRG+F5.

(I think there are some typos in the INSTALL.Win32. I have attached corrections in brackets [].)

Daniel
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++
===================================

        These 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/

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.
        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.
          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.

        - Enable LYX_DEPENDENCIES_DOWNLOAD and click Configure.
          Pre-compiled dependencies will automatically be downloaded.

        - Enable the LYX_INSTALL option, set CMAKE_INSTALL_PREFIX to
          C:\LyX\lyx-23-install and click Configure.

        - 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.

        - 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-install

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 
[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

        And copy from the Qt bin directory
        (e.g. C:\Qt\bin [C:\Qt\Qt5.6.1\5.6\msvc2015\bin?])
        QtCore5.dll [Qt5Core.dll?]
        QtGui5.dll [Qt5Gui.dll?]
        QtCore5d.dll [Qt5Cored.dll?] (if compiling Debug version)
        QtGui5d.dll [Qt5Guid.dll?] (if compiling Debug version)
        to C:\LyX\lyx-23-install\bin

8       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:

        \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-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".


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

Reply via email to