7dd753bd55
Also includes packaging notes for Linux and macOS, with a placeholder for Windows.
90 lines
3.5 KiB
Plaintext
90 lines
3.5 KiB
Plaintext
THE UR-QUAN MASTERS: BUILD INSTRUCTIONS
|
|
---------------------------------------
|
|
|
|
INSTALLING PREREQUISITES
|
|
------------------------
|
|
|
|
To build The Ur-Quan Masters, you must first install its
|
|
prerequisites: SDL2, PNG, Ogg Vorbis, and Zlib. How to do this will
|
|
depend on what operating system you are running:
|
|
|
|
On Debian or similar systems like Ubuntu, install the following packages:
|
|
|
|
sudo apt-get install build-essential libogg-dev libpng-dev libsdl2-dev \
|
|
libvorbis-dev libz-dev
|
|
|
|
On Fedora or similar systems like CentOS, install these packages:
|
|
sudo dnf install libogg-devel libpng-devel libvorbis-devel make SDL2-devel \
|
|
zlib-devel
|
|
|
|
On macOS, install Xcode from the App Store, and then install
|
|
"Additional components" when you run it for the first time. You can
|
|
then install brew from https://brew.sh and then use it to install your
|
|
requirements from the Terminal:
|
|
|
|
brew install libogg libpng libvorbis sdl2
|
|
|
|
On Windows, you will need to use the MSYS2 system from
|
|
https://www.msys2.org -- after you install the base system, open an
|
|
"MSYS2 MSYS" window and update the system with the command
|
|
|
|
pacman -Syuu
|
|
|
|
until there is nothing left to do. Aftr that you can install the
|
|
packages you will need to build the 32-bit version of UQM:
|
|
|
|
pacman -S make pkg-config mingw-w64-i686-gcc mingw-w64-i686-libogg \
|
|
mingw-w64-i686-libpng mingw-w64-i686-libsystre \
|
|
mingw-w64-i686-libvorbis mingw-w64-i686-SDL2 mingw-w64-i686-zlib
|
|
|
|
Actually building UQM will need to be done from a "MSYS2 MinGW 32-bit"
|
|
window, not "MSYS2 MSYS".
|
|
|
|
BUILDING THE PROGRAM
|
|
--------------------
|
|
|
|
Building and configuration is managed by the "build.sh" script in the
|
|
same directory as this file. Ordinarily, you will only need the command
|
|
|
|
./build.sh uqm
|
|
|
|
To configure and build the system. Pass an argument like "-j5" for a
|
|
parallel build using 5 processes. To delete the current bulid and
|
|
reconfigure, issue the command
|
|
|
|
./build.sh uqm clean
|
|
|
|
And it will clear out all configuration choices.
|
|
|
|
The configuration process is interactive; for unattended or scripted
|
|
installs, consult the "config.state" file generated by the
|
|
configuration process and synthesize an equivalent as needed; builds
|
|
will then skip the configure step after that.
|
|
|
|
After the build completes, a binary named "uqm" or "uqm-debug" will be
|
|
created, and should be runnable out of this directory. To produce a
|
|
distributable or installable package that runs on any system, more
|
|
work is needed.
|
|
|
|
BUILDING AN INSTALLABLE PACKAGE
|
|
-------------------------------
|
|
|
|
LINUX: The UQM project does not officially maintain any installation
|
|
packages for any Linux distro, but other volunteers have often done
|
|
this already. In general, all that will be needed is to arrange
|
|
matters so that the uqm binary and the content directory are installed
|
|
into globally accessible locations, and that it is invoked with
|
|
arguments that properly identify those directories.
|
|
|
|
WINDOWS: An installable Windows build takes the UQM.EXE file created
|
|
by the build process and then correlates it with the prepackaged
|
|
content packs to produce an installer executable that will download
|
|
all other data from sourceforge. See INSTALL.win32 for the extra steps
|
|
required for this.
|
|
|
|
MAC: A redistributable package on macOS is an app bundle that contains
|
|
everything needed to run the program. Because of the way brew handles
|
|
system dependencies, the program must be built differently to be
|
|
redistributable. See INSTALL.macos for details on how to do this.
|
|
|