Difference between revisions of "Compiling Luanti"

From Minetest Developer Wiki
Jump to navigation Jump to search
(→‎GNU/Linux: rename to Luanti)
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Mbox|type=warning|text=
+
This page is about how to compile Luanti yourself.
'''This page is redundant with the compilation instructions that exist in the [https://github.com/minetest/minetest Minetest README]'''<br/>
 
''Link to the appropriate section in the README rather than here, and update any links that point to here!''
 
}}
 
  
''This page is about compiling Minetest for desktop platforms. For compiling Minetest for Android, see [[Android]].''
+
== Official compilation instructions ==
  
== Compiling on GNU/Linux ==
+
We strongly recommend you read the [https://github.com/minetest/minetest#compiling Luanti README file]. It covers most of the important platforms.
Please see the [https://github.com/minetest/minetest#compiling-on-gnulinux README.md file] for instructions.
 
  
=== See also ===
+
== Unofficial compilation instructions ==
* [http://forum.minetest.net/viewtopic.php?f=3&t=3837 One-line script for installing/compiling Minetest Git, for Debian / Ubuntu / Mint]
 
  
== Compiling on Windows ==
+
The community has written several unofficial guides to compile Luanti on unusual or rare platforms. Proceed only if the README was not enough.
Please see the [https://github.com/minetest/minetest#compiling-on-windows-using-msvc Minetest README].
 
  
== Cross-compilation ==
+
'''Tread carefully from this point on.'''
To compile a win32 version of Minetest in Linux with [https://en.wikipedia.org/wiki/MinGW MinGW] you can use the build script in <code>[https://github.com/minetest/minetest/blob/master/util/buildbot/buildwin32.sh utils/buildbot/buildwin32.sh]</code>.
 
  
To compile a win64 version of Minetest in Linux with [https://en.wikipedia.org/wiki/MinGW MinGW] you can use the build script in <code>[https://github.com/minetest/minetest/blob/master/util/buildbot/buildwin32.sh utils/buildbot/buildwin64.sh]</code>.
+
=== GNU/Linux ===
 +
 
 +
[http://forum.minetest.net/viewtopic.php?f=3&t=3837 One-line script for installing/compiling Luanti Git, for Debian / Ubuntu / Mint]
 +
 
 +
=== Windows ===
 +
For compiling Luanti on Windows using MSYS2, see [https://wiki.voxelmanip.se/Compiling_on_Windows_using_MSYS2 Compiling on Windows using MSYS2].
 +
 
 +
For compiling Luanti on Windows using MSVC, see the [https://github.com/minetest/minetest#compiling-on-windows-using-msvc Luanti README].
 +
 
 +
=== Cross-compilation ===
 +
To compile a win32 version of Luanti in Linux with [https://en.wikipedia.org/wiki/MinGW MinGW] you can use the build script in <code>[https://github.com/minetest/minetest/blob/master/util/buildbot/buildwin32.sh utils/buildbot/buildwin32.sh]</code>.
 +
 
 +
To compile a win64 version of Luanti in Linux with [https://en.wikipedia.org/wiki/MinGW MinGW] you can use the build script in <code>[https://github.com/minetest/minetest/blob/master/util/buildbot/buildwin32.sh utils/buildbot/buildwin64.sh]</code>.
  
 
If you have errors during cross compilation related to std::thread and std::mutex, this is due to mingw-w64 being incorrectly configured for cross compilation.  
 
If you have errors during cross compilation related to std::thread and std::mutex, this is due to mingw-w64 being incorrectly configured for cross compilation.  
Line 33: Line 38:
  
 
[[Category:Core Engine]]
 
[[Category:Core Engine]]
[[Category:Compiling Minetest]]
+
[[Category:Compiling Luanti]]

Latest revision as of 17:55, 28 October 2024

This page is about how to compile Luanti yourself.

Official compilation instructions

We strongly recommend you read the Luanti README file. It covers most of the important platforms.

Unofficial compilation instructions

The community has written several unofficial guides to compile Luanti on unusual or rare platforms. Proceed only if the README was not enough.

Tread carefully from this point on.

GNU/Linux

One-line script for installing/compiling Luanti Git, for Debian / Ubuntu / Mint

Windows

For compiling Luanti on Windows using MSYS2, see Compiling on Windows using MSYS2.

For compiling Luanti on Windows using MSVC, see the Luanti README.

Cross-compilation

To compile a win32 version of Luanti in Linux with MinGW you can use the build script in utils/buildbot/buildwin32.sh.

To compile a win64 version of Luanti in Linux with MinGW you can use the build script in utils/buildbot/buildwin64.sh.

If you have errors during cross compilation related to std::thread and std::mutex, this is due to mingw-w64 being incorrectly configured for cross compilation.

To fix the errors, use the command:

For 64-bit builds: sudo update-alternatives --config x86_64-w64-mingw32-g++

For 32-bit Ubuntu Builds: sudo update-alternatives --config i686-w64-mingw32-g++

For 32-bit Debian Builds: sudo update-alternatives --config i586-w64-mingw32-g++

When provided with a prompt for which version to select, please choose "posix". Then retry the buildwin32.sh or buildwin64.sh