(either selecting Python-Development workload or just Python 3 in the individual components tab)
in the Visual Studio installer, so that you don't have to install it separately
+ You may also want to install following extensions:
+ - Qt Visual Studio Tools: enables preview of some Qt variables, like QString, while debugging
+ - Concurrency Visualizer for Visual Studio: graphically shows which thread does what and when
+
2 Install Qt
Download the latest Qt online installer for Open Source development on Windows
normal view active will start LyX.exe located in e.g. C:\LyX\build\bin\Debug, it won't find the dependencies
and will therefore fail. Once debugging has started you can switch back to normal view of the Solution Explorer)
+ - Don't forget to build the INSTALL project each time you change the source code.
+
Creating a patch file containing a bugfix
=========================================
Creating the Installer
======================
- - Get NSIS from http://nsis.sourceforge.net
+ - The installer is done with 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
-To build the installer do the following:
-
-1. extract the source zip-file to e.g. the path "C:\LyX-Installer"
-2. open the file settings.nsh with a text editor
- and adapt there the following paths to the ones on your PC, e.g.:
- !define FILES_LYX "C:\LyX-Installer\LyXPackage\LyX"
- !define FILES_DEPS "C:\LyX-Installer\LyX2.2x\lyx-windows-deps-msvc2015"
- !define FILES_QT "C:\LyX-Installer\LyXPackage\LyX"
-3. install the latest version 3.x of NSIS (https://nsis.sourceforge.io/Download)
-4. install the NSIS Large Strings build (https://nsis.sourceforge.io/Special_Builds)
- (extract the extension ZIP file in your NSIS installation folder and this way overwrite some files)
-5. open the file FindProcDLL Unicode bin.zip (that is part of this bundle),
- extract from it the file FindProc.dll to the folder \Plugins\x86-unicode of
- NSIS's installation folder
-6. open the file Inetc.zip (that is part of this bundle),
- extract from it the file INetC.dll to the folder \Plugins\x86-unicode of
- NSIS's installation folder
-7. right-click on the file lyx-standard.nsi and choose "Compile NSIS script"
- to compile the standard installer
-8. right-click on the file lyx-bundle.nsi and choose "Compile NSIS script"
- to compile the bundle installer
\ No newline at end of file
+Building the installer
+======================
+
+To build the installer do the following:
+
+- install the latest version 3.x of NSIS (https://nsis.sourceforge.io/Download)
+- install the NSIS Large Strings build (https://nsis.sourceforge.io/Special_Builds)
+ (extract the extension ZIP file in your NSIS installation folder and this way overwrite some files)
+- download the plugin FindProcDLL, choose the release for unicode (https://nsis.sourceforge.io/FindProcDLL_plug-in),
+ extract from it the file FindProc.dll to the folder \Plugins\x86-unicode of NSIS's installation folder
+- download the plugin Inetc (https://nsis.sourceforge.io/Inetc_plug-in)
+ extract the content into the NSIS's installation folder
+- open the file settings.nsh with a text editor and adapt the settings for your need. A good text editor
+ for NSIS development is e.g. Visual Studio Code with the NSIS extension.
+- right-click on the file lyx-standard.nsi and choose "Compile NSIS script"
+
+
+Updating dependencies
+=====================
+
+- Imagemagick:
+ download the portable version of imagemagick for windows from https://imagemagick.org/script/download.php (32 or 64 bit),
+ current version is 7.0.10-0
+ extract the zip archive, there will be many executable files which are the exact same size as "magick.exe" which is
+ the only executable LyX needs, delete these redundant executables. Also delete ffmpeg.exe and IMDisplay.exe.
+ The resulting folder size should be around 15-16 MB
+
+- Ghostscript
+ download ghostscript for windows from https://www.ghostscript.com/download/gsdnld.html (32 or 64 bit), current version is 9.50
+ install to your computer or open the installer executable with 7zip, extract the folders "bin" and "lib" from the installdir/archive
+ to %%dependencies%%\ghostscript.
+
+- Python
+ download the latest Python 2 release for windows from https://www.python.org/downloads/windows/ (32 or 64 bit),
+ current version is 2.7.17
+ Install it or extract with a tool named lessmsi. If you install it, you will have to find python27.dll in the
+ Windows\System32 folder. 64-bit dlls on a 64-bit windows are stored in Windows\System32 folder, 32-bit dlls on a 64-bit windows
+ are stored in Windows\SysWOW64. Copy this python27.dll to %%dependencies%%\Python, from the python installation folder copy
+ all files and "DLLs", "Lib" and "libs" subfolders to %%dependencies%%\Python. You can uninstall python afterwards.
+ If you extracted with lessmsi, you will also get visual studio runtime dlls and some executables, which are used during installation,
+ these are not needed. Copy the 2 python executables, the python dll, the 3 textfiles (license, news and readme) and the "DLLs",
+ "Lib" and "libs" subfolders to %%dependencies%%\Python.
+
+- Visual Studio runtime
+ Download the latest Visual C++ Redistributable (if you still haven't), the version should match with your VS C++ compiler
+ (Buildtools) though. Find these files in Windows/System32 folder:
+ concrt140.dll
+ msvcp140.dll
+ vcamp140.dll
+ vccorlib140.dll
+ vcomp140.dll
+ vcruntime140.dll
+ For 64 bit you will additionally need
+ vcruntime140_1.dll
+ See the Python description above for explanation of different store locations of 64 and 32 bit dlls. Copy these dlls to
+ %%dependencies%%\bin.
+
+- NetPbm
+ download the latest binaries zip file from http://gnuwin32.sourceforge.net/packages/netpbm.htm,
+ current version is 10.27, last updated on 12 May 2005
+ extract the files
+ libnetpbm10.dll
+ pnmcrop.exe
+ to %%dependencies%%\bin.
+
+- DTL
+ Using TeX Live Manager install package dtl.win32, current version is 0.6.1.
+ From C:\texlive\2019\bin\win32 copy these files
+ dt2dv.exe
+ dv2dt.exe
+ to %%dependencies%%\bin. You can uninstall the package afterwards.
+
+- rsvg-convert
+ dowload the 7zip archve from https://opensourcepack.blogspot.com/2012/06/rsvg-convert-svg-image-conversion-tool.html,
+ current version is 2.40.20
+ Extract rsvg-convert.exe ti %%dependencies%%\bin.
+
+- unoconv
+ download the latest source code (zip) from https://github.com/unoconv/unoconv/releases
+ current version is 0.8.2
+ extract unoconv (no file extension) to %%dependencies%%\bin and add the extension ".py"
+
+- pdfview.exe
+ this is a NSIS script, which calls users standard pdf viewer to display pdf files you compile with
+ LaTeX using LyX, its source is available in %%lyxgit%%\development\Win32\pdfview,
+ it uses System.dll and Console.dll
\ No newline at end of file