|
1 |
| - |
2 |
| - Midnight Commander Win32 Native build and installation tools. |
3 |
| - |
4 |
| - Requirements: |
5 |
| - |
6 |
| - o Suitable compiler chain, from one of the following |
7 |
| - |
8 |
| - o Open Watcom 1.9 or the later 2.0. |
9 |
| - o Microsoft Visual Studio 2013 (or greater). |
10 |
| - o mingw32/64 |
11 |
| - |
12 |
| - o Perl - Make system generation and run-time support. |
13 |
| - |
14 |
| - o Unix binary tools - Make system run-time support. |
15 |
| - |
16 |
| - o InnoSetup - Required for the creation of installation packages. |
17 |
| - |
18 |
| - |
19 |
| - Components: |
20 |
| - |
21 |
| - o mcsrc - Midnight Commander source (currently 4.8.29). |
22 |
| - |
23 |
| - mc-win32 changes enclosed within "ifdefined(WIN32)" |
24 |
| - and/or are labelled with "//WIN32" comment blocks. |
25 |
| - |
26 |
| - o mcwin32 - Windows specific code and build env. |
27 |
| - |
28 |
| - |
29 |
| - Build steps: |
30 |
| - |
31 |
| - 1. binutils |
32 |
| - |
33 |
| - A unix style bintools needs to be available, plus the installation should be |
34 |
| - visible within the current PATH. |
35 |
| - |
36 |
| - Examples: |
37 |
| - |
38 |
| - o gnuwin32 [ http://unxutils.sourceforge.net/ ] |
39 |
| - |
40 |
| - Note: |
41 |
| - These set of tools are aging, for example the gmake bundled with gnuwin32 is |
42 |
| - an older 3.81 release, which wont function correctly. GNU make 4.0 or greater |
43 |
| - is required, advise replacing with the bundled 'mcwin32/support/gmake-42.exe'. |
44 |
| - |
45 |
| - o msys2 |
46 |
| - |
47 |
| - Note: cygwin is not suitable nor supported. |
48 |
| - |
49 |
| - |
50 |
| - 2. Compiler installation |
51 |
| - |
52 |
| - One of the following C/C++ toolchains needs to be available, plus the installation |
53 |
| - should be visible within the current PATH. |
54 |
| - |
55 |
| - Suitable distributions include: |
56 |
| - |
57 |
| - o Open Watcom 1.9 or the later 2.0. |
58 |
| - o Microsoft Visual Studio 2013 (or greater). |
59 |
| - o mingw32/64 [ experimental ]. |
60 |
| - |
61 |
| - Note: OpenWatcom is currently utlised for releases. |
62 |
| - |
63 |
| - |
64 |
| - 3. Perl installation |
65 |
| - |
66 |
| - A perl installation needs to be available plus the installation should be visible |
67 |
| - within the current PATH. |
68 |
| - |
69 |
| - Suitable perl distributions include: |
70 |
| - |
71 |
| - o ActiveState Perl. |
72 |
| - o Strawberry Perl. |
73 |
| - |
74 |
| - |
75 |
| - 4. InnoSetup installation, optional |
76 |
| - |
77 |
| - Install InnoSetup 5.6.x within its default installation path; if modified the |
78 |
| - arguments to the support scripts below shall need to tbe adjusted to match, |
79 |
| - set the envvar INNO="<install-path>" prior to priming the tree. |
80 |
| - |
81 |
| - This package is optional and only required if an installer is being built. |
82 |
| - |
83 |
| - 6.x Inno and later is also an option, but the Installer will only function on Vista |
84 |
| - or greater. 6.x and later versions of Inno no longer support Windows 2000, XP, and Server |
85 |
| - 2003. |
86 |
| - |
87 |
| - |
88 |
| - 4. Prime the build tree; generate makefiles |
89 |
| - |
90 |
| - $ cd mcwin32 |
91 |
| - |
92 |
| - $ support\vc2015config.bat |
93 |
| - or $ support\vc2017config.bat |
94 |
| - or $ support\vc2019config.bat |
95 |
| - or $ support\owcconfig.bat |
96 |
| - or $ support\owc20config.bat |
97 |
| - |
98 |
| - Note: |
99 |
| - These scripts execute the perl module makelib.pl which generates Makefiles targeted |
100 |
| - for the specified toolchain. |
101 |
| - |
102 |
| - |
103 |
| - 5. Build the entire tree with: |
104 |
| - |
105 |
| - $ gmake release |
106 |
| - or $ support\gmake-42 release |
107 |
| - |
108 |
| - Usage: |
109 |
| - |
110 |
| - | make [VERBOSE=1] [release or debug] target |
111 |
| - | |
112 |
| - | Build one or more of the following targets recursively within each sub-directory |
113 |
| - | for the toolchain <toolchains>. |
114 |
| - | |
115 |
| - | Options: |
116 |
| - | VERBOSE - increase run-time diagnostics; suppress stderr filtering. |
117 |
| - | |
118 |
| - | Targets: |
119 |
| - | |
120 |
| - | build - build everything. |
121 |
| - | package - build package. |
122 |
| - | clean - delete everything which can be remade. |
123 |
| - | vclean - delete all. |
124 |
| - | help - command line usage. |
125 |
| - |
126 |
| - |
127 |
| - 6. To create the installer. |
128 |
| - |
129 |
| - $ support\gmake-42 release package |
130 |
| - or $ start mc-inno-setup.iss |
131 |
| - |
132 |
| - Note: |
133 |
| - Alternatively zip/copy the bin tree to your desired install location, as the |
134 |
| - application is portable. |
135 |
| - |
136 |
| - |
137 |
| - 7. Finally, please review the packaged example alternative configurations as win32 |
138 |
| - development environments can be problematic, dependent on the host setup: |
139 |
| - |
140 |
| - o .github/workflows, github build actions for latest OWC, MSVC abd MINGW toolchains. |
141 |
| - |
142 |
| - o Appveyor CI integration notes under mcwin32/support. |
143 |
| - |
144 |
| - plus other helper scripts under mcwin32/support. |
145 |
| - |
146 |
| - |
147 |
| -Last Update: Feb/2023 |
148 |
| -=end= |
149 |
| - |
| 1 | +See: mcwin32/doc/INSTALL.md |
0 commit comments