]> git.lyx.org Git - lyx.git/blob - development/Win32/packaging/installer/Readme.txt
New Win Installer, by Eugene
[lyx.git] / development / Win32 / packaging / installer / Readme.txt
1 Building the installer
2 ======================
3
4 To build the installer do the following:
5
6 - install the latest version 3.x of NSIS (https://nsis.sourceforge.io/Download)
7 - install the NSIS Large Strings build (https://nsis.sourceforge.io/Special_Builds)
8   (extract the extension ZIP file in your NSIS installation folder and this way overwrite some files)
9 - download the plugin Inetc (https://nsis.sourceforge.io/Inetc_plug-in)
10   extract the content into the NSIS's installation folder
11 - download the plugin NSISList (https://nsis.sourceforge.io/NSISList_plug-in), download both .zip archives,
12   extract Include\NSISList.nsh from the first archive to the folder Include of NSIS's installation folder and
13   extract NSISList-Unicode\NSISList.dll from the second archive to the folder \Plugins\x86-unicode of NSIS's installation folder
14 - download the plugin ShellLink (https://nsis.sourceforge.io/ShellLink_plug-in)
15   extract Unicode\Plugins\ShellLink.dll from the archive to the folder \Plugins\x86-unicode of NSIS's installation folder
16 - download the plugin nsProcess (https://nsis.sourceforge.io/NsProcess_plugin) with unicode support
17   extract Plugin\nsProcessW.dll from the archive to the folder \Plugins\x86-unicode of NSIS's installation folder and rename it to nsProcess.dll
18   extract Include\nsProcess.nsh from the archive to the folder \Include of NSIS's installation folder
19 - Go to the Qt-kit directory, which you have specified as CMAKE_PREFIX_PATH before compiling in CMake Gui, enter the bin folder,
20   copy these files:
21    Qt5Concurrent.dll"
22    Qt5Network.dll"
23    Qt5OpenGL.dll"
24    Qt5PrintSupport.dll"
25   to %%lyxbuild%%\LYX_INSTALLED\bin
26 - open the file settings.nsh with a text editor and adapt the settings for your need. A good text editor
27   for NSIS development is e.g. Visual Studio Code with the NSIS extension.
28 - right-click on the file lyx-standard.nsi and choose "Compile NSIS script"
29
30
31 Updating dependencies
32 =====================
33
34 - Imagemagick:
35   download the portable version of imagemagick for windows from https://imagemagick.org/script/download.php (32 or 64 bit),
36   current version is 7.0.10-0
37   extract the zip archive,
38   run imagemagickConvert.bat in %%repo%%\development\Win32\packaging\dependencies, browse to the extracted imagemagick archive,
39   after the script finishes check for anything suspicious.
40   if there is anything suspicious or it didn't work (in case imagemagic devs changed something), read the following description,
41   it describes how it was done for 7.0.10-0, repair the bat file and update the description
42   In the fresh extracted archive will be many executable files which are the exact same size as "magick.exe". magick.exe is
43   the only executable LyX needs, delete the other redundant executables. Also delete ffmpeg.exe and IMDisplay.exe.
44   The resulting folder size should be around 15-16 MB
45
46 - Ghostscript
47   download ghostscript for windows from https://www.ghostscript.com/download/gsdnld.html (32 or 64 bit), current version is 9.50
48   install to your computer or open the installer executable with 7zip, extract the folders "bin" and "lib" from the installdir/archive
49   to %%dependencies%%\ghostscript.
50
51 - Python
52   download the latest Python 2 release for windows from https://www.python.org/downloads/windows/ (32 or 64 bit),
53   current version is 2.7.17
54   Install it or extract with a tool named lessmsi. If you install it, you will have to find python27.dll in the 
55   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
56   are stored in Windows\SysWOW64. Copy this python27.dll to %%dependencies%%\Python, from the python installation folder copy
57   all files and "DLLs", "Lib" and "libs" subfolders to %%dependencies%%\Python. You can uninstall python afterwards.
58   If you extracted with lessmsi, you will also get visual studio runtime dlls and some executables, which are used during installation,
59   these are not needed. Copy the 2 python executables, the python dll, the 3 textfiles (license, news and readme) and the "DLLs",
60   "Lib" and "libs" subfolders to %%dependencies%%\Python.
61
62 - Visual Studio runtime
63   Download the latest Visual C++ Redistributable (if you still haven't), the version should match with your VS C++ compiler
64   (Buildtools) though. Find these files in Windows/System32 folder:
65    concrt140.dll
66    msvcp140.dll
67    vcamp140.dll
68    vccorlib140.dll
69    vcomp140.dll
70    vcruntime140.dll
71   For 64 bit you will additionally need
72    vcruntime140_1.dll
73   See the Python description above for explanation of different store locations of 64 and 32 bit dlls. Copy these dlls to
74   %%dependencies%%\bin.
75
76 - NetPbm
77   download the latest binaries zip file from http://gnuwin32.sourceforge.net/packages/netpbm.htm,
78   current version is 10.27, last updated on 12 May 2005
79   extract the files
80    libnetpbm10.dll
81    pnmcrop.exe
82   to %%dependencies%%\bin.
83
84 - DTL
85   Using TeX Live Manager install package dtl.win32,
86   From C:\texlive\2019\bin\win32 copy these files
87    dt2dv.exe
88    dv2dt.exe
89   to %%dependencies%%\bin. You can uninstall the package afterwards.
90   Info: Version 0.6.1 does not work with MikTex (math preview triggers error complaining about missing kpathsea631.dll),
91   therefore this method is not usable.
92   Update: as of report 11325 DTL tools are included in lyxgit and get compiled alongside lyx.
93
94 - rsvg-convert
95   dowload the 7zip archve from https://opensourcepack.blogspot.com/2012/06/rsvg-convert-svg-image-conversion-tool.html,
96   current version is 2.40.20
97   Extract rsvg-convert.exe ti %%dependencies%%\bin.
98
99 - unoconv
100   download the latest source code (zip) from https://github.com/unoconv/unoconv/releases
101   current version is 0.8.2
102   extract unoconv (no file extension) to %%dependencies%%\bin and add the extension ".py"
103
104 - pdfview.exe
105   this is a NSIS script, which calls users standard pdf viewer to display pdf files you compile with
106   LaTeX using LyX, its source is available in %%lyxgit%%\development\Win32\pdfview
107
108 Note: if you update any dependencies, please add a note to ChangeLog.txt