Difference between revisions of "Compiling ScummVM/GCC"

From ScummVM :: Wiki
Jump to navigation Jump to search
(Update SDL dependency to SDL2, now that it is the default for builds)
(Add instructions for compiling on Arch Linux and its derivatives.)
Line 19: Line 19:
 
<source lang="bash">
 
<source lang="bash">
 
yum install gcc-c++ make SDL-devel libjpeg-turbo-devel libmpeg2-devel libogg-devel libvorbis-devel flac-devel libmad-devel libpng-devel libtheora-devel faad2-devel freetype-devel zlib-devel
 
yum install gcc-c++ make SDL-devel libjpeg-turbo-devel libmpeg2-devel libogg-devel libvorbis-devel flac-devel libmad-devel libpng-devel libtheora-devel faad2-devel freetype-devel zlib-devel
 +
</source>
 +
 +
===Arch Linux and derivatives (like Manjaro)===
 +
The following command installs the compiler toolchain and all the needed libraries:
 +
<source lang="bash">
 +
pacman -S base-devel git curl faad2 freetype2 flac fluidsynth libjpeg-turbo libogg libvorbis libmad libmpeg2 libtheora libpng nasm readline sdl2 sdl2_net zlib
 
</source>
 
</source>
  

Revision as of 19:28, 15 October 2017

Compiling ScummVM with GCC under Linux

Installing the needed libraries via a package manager

Debian-based distributions

The following should install all the needed libraries:

apt-get install g++ make libsdl2-dev libjpeg62-turbo-dev libmpeg2-4-dev libogg-dev libvorbis-dev libflac-dev libmad0-dev libpng-dev libtheora-dev libfaad-dev libfluidsynth-dev libfreetype6-dev zlib1g-dev

Some distributions, like Ubuntu, do not provide the turbo version of libjpeg. In this case, simply install libjpeg62-dev instead of libjpeg62-turbo-dev.

For Ubuntu, you can also obtain libunity:

apt-get install libunity-dev

RPM-based distributions

The following should install all the needed libraries (apart from fluidsynth):

yum install gcc-c++ make SDL-devel libjpeg-turbo-devel libmpeg2-devel libogg-devel libvorbis-devel flac-devel libmad-devel libpng-devel libtheora-devel faad2-devel freetype-devel zlib-devel

Arch Linux and derivatives (like Manjaro)

The following command installs the compiler toolchain and all the needed libraries:

pacman -S base-devel git curl faad2 freetype2 flac fluidsynth libjpeg-turbo libogg libvorbis libmad libmpeg2 libtheora libpng nasm readline sdl2 sdl2_net zlib

Configuring ScummVM

Run the configure script - type "./configure" in the directory with the ScummVM source files. If no errors come up, you should be ready to compile ScummvM. Run "./configure --help" for a list of optional features (eg additional, not yet enabled engines).

Note: 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.

Compiling ScummVM

run "make clean" and then "make"

Installing ScummVM

either run ./scummvm from the current directory or run make install to install ScummVM (you can then run it using "scummvm" from any directory)

Further reading