Building Miranda/en: Difference between revisions

From Miranda NG
Building Miranda/en
Jump to navigation Jump to search
(Updating to match new version of source page)
(Updating to match new version of source page)
 
(4 intermediate revisions by the same user not shown)
Line 13: Line 13:
** Windows Universal CRT SDK
** Windows Universal CRT SDK
** Windows XP support for C++
** Windows XP support for C++
** Windows 8.1 SDK (only for {{Plugin|Toaster}})
** Windows 8.1 SDK (only for {{Plugin|Toaster}} plugin)
** Visual Studio C++ core features
** Visual Studio C++ core features
* Open mir_full.sln solution (located at <tt>/bin15</tt> for Visual Studio 2017, <tt>/bin16</tt> for Visual Studio 2019 or <tt>/bin17</tt> for Visual Studio 2022) and build all solution (F7) or particular plugins (in this case build <tt>mir_core</tt> first).
* Open tdlib.sln solution (located at <tt>/bin15</tt> subdirectory for Visual Studio 2017, <tt>/bin16</tt> subdirectory for Visual Studio 2019 or <tt>/bin17</tt> subdirectory for Visual Studio 2022) and build it if you want to build and use {{Plugin|Telegram}} protocol.
* Open mir_full.sln solution (located at <tt>/bin15</tt> subdirectory for Visual Studio 2017, <tt>/bin16</tt> subdirectory for Visual Studio 2019 or <tt>/bin17</tt> subdirectory for Visual Studio 2022) and build all solution (F7) or particular plugins (in this case build <tt>mir_core</tt> first).


{{TNT|Important|For Visual Studio 2017 you need to add following registry key:}}
{{TNT|Important|For Visual Studio 2017 you need to add following registry key:}}
Line 25: Line 26:
You need [https://www.freepascal.org FreePascal] to build plugins written in Pascal ({{Plugin|Actman}}, {{Plugin|mRadio}}, {{Plugin|Watrack}}), except {{Plugin|HistoryPP|History++}} which requires RAD Studio XE2.
You need [https://www.freepascal.org FreePascal] to build plugins written in Pascal ({{Plugin|Actman}}, {{Plugin|mRadio}}, {{Plugin|Watrack}}), except {{Plugin|HistoryPP|History++}} which requires RAD Studio XE2.


You need [https://learn.perl.org/installing/windows.html Perl] and [https://www.nasm.us NASM] to build [https://www.openssl.org OpenSSL].
You need [https://learn.perl.org/installing/windows.html Perl] and [https://www.nasm.us NASM] to build [https://www.openssl.org OpenSSL]:
<pre style="overflow:auto;">
cd /d "Path\to\OpenSSL\sources"
git apply "\tools\openssl\openssl-mir-changes.patch"
perl "Path\to\OpenSSL\sources\Configure" shared VC-WIN64A
nmake
</pre>


[[Category:Help{{#translation:}}|{{#getdisplaytitle:{{FULLPAGENAME}}}}]]
[[Category:Help{{#translation:}}|{{#getdisplaytitle:{{FULLPAGENAME}}}}]]

Latest revision as of 22:40, 4 December 2023

Note
The following was tested in Windows 10 and newer.
  • Obtain Miranda NG sources
  • Install Visual Studio 2017/2019/2022
  • Bare minimum Visual Studio 2017 components:
    • Static analysis tools
    • Text Template Transformation
    • C# and Visual Basic Roslyn compilers
    • MSBuild
    • VC++ 2017 version 15.9 v14.16 latest v141 tools
    • Visual C++ 2017 Redistributable Update
    • Windows Universal CRT SDK
    • Windows XP support for C++
    • Windows 8.1 SDK (only for Toaster plugin)
    • Visual Studio C++ core features
  • Open tdlib.sln solution (located at /bin15 subdirectory for Visual Studio 2017, /bin16 subdirectory for Visual Studio 2019 or /bin17 subdirectory for Visual Studio 2022) and build it if you want to build and use Telegram protocol.
  • Open mir_full.sln solution (located at /bin15 subdirectory for Visual Studio 2017, /bin16 subdirectory for Visual Studio 2019 or /bin17 subdirectory for Visual Studio 2022) and build all solution (F7) or particular plugins (in this case build mir_core first).
Important
For Visual Studio 2017 you need to add following registry key:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment]
"DoBundleInstallationChecks"="false"

You need FreePascal to build plugins written in Pascal (Actman, mRadio, Watrack), except History++ which requires RAD Studio XE2.

You need Perl and NASM to build OpenSSL:

cd /d "Path\to\OpenSSL\sources"
git apply "\tools\openssl\openssl-mir-changes.patch"
perl "Path\to\OpenSSL\sources\Configure" shared VC-WIN64A
nmake