272
edits
Hamzaalloush (talk | contribs) (→MXE: how MXE works) |
Hamzaalloush (talk | contribs) |
||
| Line 105: | Line 105: | ||
=== MXE's Makefile build process === | === MXE's Makefile build process === | ||
MXE's Makefile does not | MXE's Makefile, does not build software by itself. or rather, it does not generate configuration for software, it instead acquires software name from the table set of software names, it then passes this string returned by <nowiki><td class="package">fgfs</td></nowiki> to a variable $(1), it export $(1)="" in this example to $(1)="fgfs". | ||
for example, if you were to pass the name of the software to be cross-compile to the GNU make utility, such as: | for example, if you were to pass the name of the software to be cross-compile to the GNU make utility, such as: | ||
| Line 114: | Line 114: | ||
$(1) would be substituted by "fgfs". | $(1) would be substituted by "fgfs". | ||
in the mxe/Makefile, Line:362, 'make' will only build a blank file such as $(PREFIX)/$(3)/installed/$(1), which attempts to declare a successful build when all the commands below returned an exit | in the mxe/Makefile, Line:362, 'make' will only build a blank file such as $(PREFIX)/$(3)/installed/$(1), which attempts to declare a successful build when all the commands below returned an exit status of (0), example. | ||
<pre> | <pre> | ||
| Line 126: | Line 126: | ||
</pre> | </pre> | ||
to obtain a cross-compilation of a useful software, MXE refers to a file that contains the string returned by software name, suffixed by .mk(example, fgfs.mk), in the mxe/src/ directory, you must provide this file. | the result will be a blank file, $(PREFIX)/i686-w64-mingw32.shared/installed/fgfs. in this case $(3) was replaced by the ${triplet}.${linker_configuration}. see: https://sourceforge.net/p/mingw-w64/wiki2/TypeTriplets/ | ||
to obtain a cross-compilation of a useful software, MXE refers to a file that contains the string returned by software name, suffixed by .mk(example, fgfs.mk), in the mxe/src/ directory, you must provide this file to allow Makefile generation for software. otherwise, a minimal *.mk file will always return a successful build. | |||
=== *.MK file === | === *.MK file === | ||
edits