Open main menu

Difference between revisions of "Compiling ScummVM/AmigaOS4"

m
Final version
m (Final version)
 
(2 intermediate revisions by the same user not shown)
Line 2: Line 2:


For building ScummVM on AmigaOS4, use the following build instructions:
For building ScummVM on AmigaOS4, use the following build instructions:
== Prerequisite ==
Download and install the latest AmigaOS4 SDK from [http://hyperion-entertainment.biz/index.php/downloads?view=files&parent=30 Hyperion-Entertainment].
Download and install SDL(1 or 2) (where SDL2 should always be preferred) SDK from [https://github.com/AmigaPorts/SDL/releases GitHub]




== Prerequisite ==
You may also need to install
* Download and install AmigaOS4 SDK from [http://hyperion-entertainment.biz/index.php/downloads?view=files&parent=30 Hyperion-Entertainment].
*libogg
* Download and install SDL(1/2) (where SDL2 should always be preferred) SDK from [https://github.com/AmigaPorts/SDL/releases GitHub].
*libvorbisfile
* You may also need libvorbisfile, libvorbis, libFLAC, libogg, libmad, libtheoradec, libfaad, libmpeg2, liba52, libfreetype, libGL and/or libogles2. They can be retrieved from [http://os4depot.net/index.php?function=browse&cat=development/library OS4Depot.net].
*libvorbis
*libFLAC
*libmad
*libtheoradec
*libfaad
*libmpeg2
*liba52
*libfreetype
*libGL (and optional libogles2)


and maybe more, as more dependancies are added.


Download them from [http://os4depot.net/index.php?function=browse&cat=development/library OS4Depot.net].
== Configuring ==
== Configuring ==
Run the configure script.
Run the configure script.


If no errors come up, you should be ready to compile ScummvM.
type
* type
<syntaxhighlight>
<syntaxhighlight lang="bash">
sh ./configure --enable-plugins --disable-detection-full --enable-release
sh ./configure
 
</syntaxhighlight>
 
in the directory with the ScummVM source files.
Instead of
* or run
--enable-release
<syntaxhighlight lang="bash">
you can use
sh ./configure --help
--enable-debug
</syntaxhighlight>
to add debug flags.
for a list of optional features (e.g. additional, not yet enabled engines).




Note:
While
If you are building ScummVM on a system with low main memory (for example, lower than 256MB), you might run out of memory during linking. If you use GNU ld for compiling you can try exporting LDFLAGS="-Wl,--no-keep-memory" before running configure. This tells GNU ld to optimize for memory usage.
--enable--plugins
is the command to build a shared objects version of ScummVM.
If you must (see comment further down below), use
--enable-static
to build the static version.
</syntaxhighlight>for a list of configure options, additional features etc. (e.g. not yet enabled/unstable engines),


use<syntaxhighlight lang="bash">
sh ./configure --help
</syntaxhighlight>If no errors came up, you are ready to compile ScummvM.


== Compiling ==
== Compiling ==
* type
<syntaxhighlight lang="bash">
gmake clean
</syntaxhighlight>
in the directory ScummVM was configured and then
<syntaxhighlight lang="bash">
gmake
</syntaxhighlight>




== Cross-compiling with Cygwin ==
<syntaxhighlight>
* Make sure that you have SDL(1/2) SDK installed (where SDL2 should always be preferred).
Note on static builds:
* You may also need libogg, libvorbis, libvorbisfile, zlib, libmad.
 
* Type
If you are trying to build ScummVM statically linked (all-in-one binary) your system memory will likely run out during the linking process.
<syntaxhighlight lang="bash">
The currently available AmigaOS4 NG systems are limited to 2 GB of RAM (where the limit actually stops at roughly 1550 MB) on the OS level (this may change in the future, but right now i would advise against a natively build static binary.
./configure --host=ppc-amigaos
Cross-compiled static builds are still available throught the ScummVM buildbot at https://buildbot.scummvm.org/#/, albeit not with all available features).
</syntaxhighlight>
</syntaxhighlight>




Note:
type<syntaxhighlight>
If you get an error about sdl-config, use --with-sdl-prefix parameter to set the path.
gmake clean
</syntaxhighlight>
in the directory ScummVM was configured and then
<syntaxhighlight>
gmake amigaosdist
</syntaxhighlight>


This will automatically install the ready binary with all needed dependancies into a subdirectory named "install/".


* type
This directory can then be copied anywhere and used.
<syntaxhighlight lang="bash">
make
</syntaxhighlight>
 


== Installing ==
== Installing ==
Copy the exe wherever you want (an intitial - engine-free - .ini file will be created on the first run).


Copy (and rename, if needed) the final "install/" subdirectory wherever you want.


== Running ==
== Running ==
Double-click the  "ScummVM"  icon to start the program.
Double-click the  "ScummVM"  icon to start the program (if no .ini settings file is availbale, an initial one with default settings will be created during the first run)
276

edits