HowToBuildStendhal: Difference between revisions
Jump to navigation
Jump to search
Content deleted Content added
imported>AntumDeluge →Ant: installation instructions |
imported>AntumDeluge mNo edit summary |
||
| (7 intermediate revisions by the same user not shown) | |||
| Line 5: | Line 5: | ||
= Build Tools = |
= Build Tools = |
||
See [[HowToBuildStendhal/BuildTools|build tools page]]. |
|||
== JDK == |
|||
The Stendhal server and legacy client are both written in [https://www.java.com/ Java]. To run either requires a [https://en.wikipedia.org/wiki/Java_virtual_machine Java Runtime Environment (JRE)]. To compile server or client, a [https://en.wikipedia.org/wiki/Java_Development_Kit Java Development Kit (JDK)] is necessary. Most JDK distributions include a JRE. |
|||
= Components = |
|||
=== JDK on Unix === |
|||
All component packages, other than Android client, can be built with a single Ant command: <span style="color:darkred;">''ant dist''</span>. This will output the following: |
|||
Some Unix/Linux/BSD systems have a JDK pre-installed (usually [https://openjdk.org/ OpenJDK]). If not, most will have a version available from the system package manager. |
|||
* ''<span style="color:darkblue;">build/stendhal-<version>-src.tar.gz</span>'' |
|||
Example of installing on Ubuntu: |
|||
* ''<span style="color:darkblue;">build/stendhal-server-<version>.zip</span> (includes web client)'' |
|||
<pre> |
|||
* ''<span style="color:darkblue;">build/stendhal-<version>.zip</span> (Java client)'' |
|||
# install version 17 |
|||
* ''<span style="color:darkblue;">build/stendhal-webclient-<version>.zip</span> (requires server)'' |
|||
$ sudo apt install openjdk-17-jdk |
|||
* ''<span style="color:darkblue;">build/stendhal-starter-<version>.zip</span> (obsolete)'' |
|||
</pre> |
|||
''<span style="color:darkblue;">'''TODO:''' Instructions for individual components.</span>'' |
|||
Example of installing on Arch: |
|||
<pre> |
|||
# install default version |
|||
$ sudo pacman -S jdk-openjdk |
|||
== Server and Web Client == |
|||
# install version 17 |
|||
$ sudo pacman -S jdk17-openjdk |
|||
</pre> |
|||
== Desktop Client == |
|||
Example of installing on FreeBSD: |
|||
<pre> |
|||
# install pre-built package of version 17 |
|||
$ sudo pkg install openjdk17 |
|||
== Java Desktop Client == |
|||
# compile version 17 from Ports source |
|||
$ cd /usr/ports/java/openjdk17 |
|||
$ sudo make install clean |
|||
</pre> |
|||
== Android Client == |
|||
* [[BuildStendhalForAndroid#WebView_Client|Build Stendhal WebView Client for Android]] |
|||
Packages for Windows can be downloaded from either [https://www.oracle.com/java/technologies/downloads/ oracle.com] or for OpenJDK, from [https://jdk.java.net/ jdk.java.net]. If you download a portable .zip package, you will need to manually configure the PATH environment variable so the system knows where the <span style="color:darkred;">''java''</span> and <span style="color:darkred;">''javac''</span> executables are located. It may also be necessary to configure the <span style="color:darkgreen;">''JAVA_HOME''</span> environment variable. The recommended method is to use an installer package (.exe or .msi) as these will configure the necessary environment variables automatically. |
|||
Alternatively, a JDK can be installed from the [https://en.wikipedia.org/wiki/Windows_Package_Manager Windows Package Manager (WinGet)]. |
|||
Example of installing on Windows using WinGet: |
|||
<pre> |
|||
:: install Oracle JDK version 17 |
|||
> winget install Oracle.JDK.17 |
|||
:: install OpenJDK version 17 |
|||
> winget install ojdkbuild.openjdk.17.jdk |
|||
</pre> |
|||
=== JDK on macOS === |
|||
Packages for macOS can be downloaded from either [https://www.oracle.com/java/technologies/downloads/ oracle.com] or for OpenJDK, from [https://jdk.java.net/ jdk.java.net]. But the recommended method is to install from the [https://brew.sh/ Homebrew Package Manager] as it will configure the necessary environment variables automatically. |
|||
Example of installing on macOS using Homebrew: |
|||
<pre> |
|||
# install version 17 |
|||
$ brew install openjdk@17 |
|||
</pre> |
|||
== Ant == |
|||
[https://ant.apache.org/ Apache Ant] is the main tool for building from the command line. All components can be built using this method. However, some components are built using another tool to which Ant serves as a wrapper to call its commands. For example, the Android app is built using [https://gradle.org/ Gradle] (or a Gradle Wrapper). In this case, Gradle builds the app. Ant simply calls Gradle as a sub-command. |
|||
Apache provides executables for multiple systems from their [https://ant.apache.org/bindownload.cgi downloads page]. Alternatively, see the following instructions for specific systems. |
|||
=== Ant on Unix === |
|||
Most Unix/Linux/BSD distributions have a version of Ant available from the default package manager. |
|||
Example of installing on Ubuntu: |
|||
<pre> |
|||
$ sudo apt install ant |
|||
</pre> |
|||
Example of installing on Arch: |
|||
<pre> |
|||
$ sudo pacman -S ant |
|||
</pre> |
|||
Example of installing on FreeBSD: |
|||
<pre> |
|||
# install pre-built package |
|||
$ sudo pkg install apache-ant |
|||
# compile from Ports source |
|||
$ cd /usr/ports/devel/apache-ant |
|||
$ sudo make install clean |
|||
</pre> |
|||
=== Ant on Windows === |
|||
For Windows, follow these steps: |
|||
# Download one of the <span style="color:darkblue;">''apache-ant-<version>-bin</span> packages from the link above (Windows supports .zip archives by default). |
|||
# Extract the package contents to a unique directory. |
|||
# Add the directory path to your system's PATH environment variable. |
|||
# Open a command prompt (cmd). Type <span style="color:darkred;">''ant -version''</span> and press "enter". If it is set up correctly, version information will be printed. |
|||
=== Ant on macOS === |
|||
For macOS, the same instructions for [[HowToBuildStendhal#Ant_on_Windows|Windows]] can be used. Alternatively, it is also provided through Homebrew. |
|||
Example of installing on macOS using Homebrew: |
|||
<pre> |
|||
$ brew install ant |
|||
</pre> |
|||
= Systems = |
= Systems = |
||
| Line 130: | Line 49: | ||
* [[BuildStendhalForAndroid#WebView_Client|Build Stendhal WebView Client for Android]] |
* [[BuildStendhalForAndroid#WebView_Client|Build Stendhal WebView Client for Android]] |
||
= General Information = |
|||
* [[HowToGetLatestStendhal|How to get the latest version?]] |
* [[HowToGetLatestStendhal|How to get the latest version?]] |
||
Latest revision as of 23:40, 12 January 2026
Build Tools
See build tools page.
Components
All component packages, other than Android client, can be built with a single Ant command: ant dist. This will output the following:
- build/stendhal-<version>-src.tar.gz
- build/stendhal-server-<version>.zip (includes web client)
- build/stendhal-<version>.zip (Java client)
- build/stendhal-webclient-<version>.zip (requires server)
- build/stendhal-starter-<version>.zip (obsolete)
TODO: Instructions for individual components.
Server and Web Client
Desktop Client
Java Desktop Client
Android Client