ScummVM/Wii compilation instructions?
Moderator: ScummVM Team
- Mr_Nick666
- Posts: 132
- Joined: Wed Apr 11, 2007 9:59 am
- Location: Bideford, Devon, UK
- Contact:
I tried to compile it myself and I'm getting this error:
Tried to search the vorbisidec library I think I need, but no luck, anyone knows how to fix this?
Code: Select all
ld.exe: cannot find -lvorbisidec
collect2: ld returned 1 exit status
make: *** [scummvm-wii.elf] Error 1
You need the OGG Vorbis library, which you can get from http://www.vorbis.com/Nvaer wrote:I tried to compile it myself and I'm getting this error:
Tried to search the vorbisidec library I think I need, but no luck, anyone knows how to fix this?Code: Select all
ld.exe: cannot find -lvorbisidec collect2: ld returned 1 exit status make: *** [scummvm-wii.elf] Error 1
Final steps, when creating the scummvm-wii.elf, I'm getting many errors.
Although I have set not to use tremor, flac, mpeg2. I'm getting:
Although I have set not to use tremor, flac, mpeg2. I'm getting:
Code: Select all
graphics/libgraphics.a(mpeg_player.o): In function 'Graphics::BaseAnimationState::init(char const*)':
..\backends\platform\wii/../../../graphics/mpeg_player.cpp:138: undefined reference to 'mpeg2_init'
..\backends\platform\wii/../../../graphics/mpeg_player.cpp:144: undefined reference to 'mpeg2_info'
graphics/libgraphics.a(mpeg_player.o): In function '~BaseAnimationState':
..\backends\platform\wii/../../../graphics/mpeg_player.cpp:55: undefined reference to 'mpeg2_close'
..\backends\platform\wii/../../../graphics/mpeg_player.cpp:55: undefined reference to 'mpeg2_close'
..\backends\platform\wii/../../../graphics/mpeg_player.cpp:55: undefined reference to 'mpeg2_close'
graphics/libgraphics.a(mpeg_player.o): In function 'Graphics::BaseAnimationState::decodeFrame()':
..\backends\platform\wii/../../../graphics/mpeg_player.cpp:161: undefined reference to 'mpeg2_parse'
..\backends\platform\wii/../../../graphics/mpeg_player.cpp:167: undefined reference to 'mpeg2_buffer'
sound/libsound.a(flac.o): In function 'Audio::FlacInputStream::getStreamDecoderState() const':
..\backends\platform\wii/../../../sound/flac.cpp:290: undefined reference to 'FLAC__seekable_stream_decoder_get_stream_decoder_state'
sound/libsound.a(flac.o): In function 'Audio::FlacInputStream::callbackError(FLAC__StreamDecoderErrorStatus)':
..\backends\platform\wii/../../../sound/flac.cpp:704: undefined reference to 'FLAC__StreamDecoderErrorStatusString'
..\backends\platform\wii/../../../sound/flac.cpp:704: undefined reference to 'FLAC__StreamDecoderErrorStatusString'
sound/libsound.a(flac.o): In function 'Audio::FlacInputStream::processSingleBlock()':
..\backends\platform\wii/../../../sound/flac.cpp:299: undefined reference to 'FLAC__seekable_stream_decoder_process_single'
sound/libsound.a(flac.o): In function 'Audio::FlacInputStream::seekAbsolute(unsigned long long)':
..\backends\platform\wii/../../../sound/flac.cpp:317: undefined reference to 'FLAC__seekable_stream_decoder_seek_absolute'
sound/libsound.a(flac.o): In function 'Audio::FlacInputStream::readBuffer(short*, int)':
..\backends\platform\wii/../../../sound/flac.cpp:393: undefined reference to 'FLAC__StreamDecoderStateString'
..\backends\platform\wii/../../../sound/flac.cpp:393: undefined reference to 'FLAC__StreamDecoderStateString'
..\backends\platform\wii/../../../sound/flac.cpp:276: undefined reference to 'FLAC__seekable_stream_decoder_finish'
..\backends\platform\wii/../../../sound/flac.cpp:277: undefined reference to 'FLAC__seekable_stream_decoder_delete'
..\backends\platform\wii/../../../sound/flac.cpp:276: undefined reference to 'FLAC__seekable_stream_decoder_finish'
..\backends\platform\wii/../../../sound/flac.cpp:277: undefined reference to 'FLAC__seekable_stream_decoder_delete'
sound/libsound.a(flac.o): In function 'Audio::FlacInputStream::processUntilEndOfMetadata()':
..\backends\platform\wii/../../../sound/flac.cpp:308: undefined reference to 'FLAC__seekable_stream_decoder_process_until_end_of_metadata'
sound/libsound.a(flac.o): In function 'FlacInputStream':
..\backends\platform\wii/../../../sound/flac.cpp:200: undefined reference to 'FLAC__seekable_stream_decoder_new'
..\backends\platform\wii/../../../sound/flac.cpp:212: undefined reference to 'FLAC__seekable_stream_decoder_set_read_callback'
..\backends\platform\wii/../../../sound/flac.cpp:213: undefined reference to 'FLAC__seekable_stream_decoder_set_seek_callback'
..\backends\platform\wii/../../../sound/flac.cpp:214: undefined reference to 'FLAC__seekable_stream_decoder_set_tell_callback'
..\backends\platform\wii/../../../sound/flac.cpp:215: undefined reference to 'FLAC__seekable_stream_decoder_set_length_callback'
..\backends\platform\wii/../../../sound/flac.cpp:216: undefined reference to 'FLAC__seekable_stream_decoder_set_eof_callback'
..\backends\platform\wii/../../../sound/flac.cpp:217: undefined reference to 'FLAC__seekable_stream_decoder_set_write_callback'
..\backends\platform\wii/../../../sound/flac.cpp:218: undefined reference to 'FLAC__seekable_stream_decoder_set_metadata_callback'
..\backends\platform\wii/../../../sound/flac.cpp:219: undefined reference to 'FLAC__seekable_stream_decoder_set_error_callback'
..\backends\platform\wii/../../../sound/flac.cpp:220: undefined reference to 'FLAC__seekable_stream_decoder_set_client_data'
..\backends\platform\wii/../../../sound/flac.cpp:222: undefined reference to 'FLAC__seekable_stream_decoder_init'
sound/libsound.a(vorbis.o): In function 'Audio::VorbisInputStream::refill()':
..\backends\platform\wii/../../../sound/vorbis.cpp:225: undefined reference to 'ov_time_tell'
..\backends\platform\wii/../../../sound/vorbis.cpp:240: undefined reference to 'ov_time_seek'
..\backends\platform\wii/../../../sound/vorbis.cpp: undefined reference to 'ov_read'
sound/libsound.a(vorbis.o): In function 'Audio::VorbisInputStream::readBuffer(short*, int)':
..\backends\platform\wii/../../../sound/vorbis.cpp:205: undefined reference to 'ov_time_tell'
..\backends\platform\wii/../../../sound/vorbis.cpp:210: undefined reference to 'ov_time_seek'
sound/libsound.a(vorbis.o): In function '~VorbisInputStream':
..\backends\platform\wii/../../../sound/vorbis.cpp:188: undefined reference to 'ov_clear'
..\backends\platform\wii/../../../sound/vorbis.cpp:188: undefined reference to 'ov_clear'
sound/libsound.a(vorbis.o): In function 'VorbisInputStream':
..\backends\platform\wii/../../../sound/vorbis.cpp:144: undefined reference to 'ov_open_callbacks'
..\backends\platform\wii/../../../sound/vorbis.cpp:166: undefined reference to 'ov_time_total'
..\backends\platform\wii/../../../sound/vorbis.cpp:177: undefined reference to 'ov_time_seek'
..\backends\platform\wii/../../../sound/vorbis.cpp:183: undefined reference to 'ov_info'
..\backends\platform\wii/../../../sound/vorbis.cpp:184: undefined reference to 'ov_info'
collect2: ld returned 1 exit status
make: *** [scummvm-wii.elf] Error 1
I spoke to dhewg yesterday. He's quite busy lately and does not have a lot of time for ScummVM. He still is the Wii port maintainer and is planning to spend more time on it.
I've made a new svn build which could use some feedback.
The same svn checkout is used, linked to libogc git (SDHC support) and libfat git (large SD performance boost).
COMI runs very smooth now, without any hickups at all.
FLAC, Ogg/Vorbis, MPEG2 is still supported.
Read the included README-SVN-BUILD for reasons why I had to split the boot.dol into two different version again.
Simply put it's the limited memory (70Mb) of the Wii which for large games (only COMI so far) just isn't enough sometimes.
Feedback please.
Which games work, does SDHC work? Does the large boot.dol work properly too?
scummvm-wii-SDHC_2008114.rar
//Bossk
I've made a new svn build which could use some feedback.
The same svn checkout is used, linked to libogc git (SDHC support) and libfat git (large SD performance boost).
COMI runs very smooth now, without any hickups at all.
FLAC, Ogg/Vorbis, MPEG2 is still supported.
Read the included README-SVN-BUILD for reasons why I had to split the boot.dol into two different version again.
Simply put it's the limited memory (70Mb) of the Wii which for large games (only COMI so far) just isn't enough sometimes.
Feedback please.
Which games work, does SDHC work? Does the large boot.dol work properly too?
scummvm-wii-SDHC_2008114.rar
//Bossk
If I compile scummvm without tremor, flac and mpeg2 support it works, but when I try to compile it with any of those three I can't.
Bossk, could you write a small tut about compiling these libs to see if I'm missing something, and some download links of the libs you used (version of the libs too) if possible?
Bossk, could you write a small tut about compiling these libs to see if I'm missing something, and some download links of the libs you used (version of the libs too) if possible?
You must crosscompile those libs to the Wii / gekko kit before you can use them.Nvaer wrote:If I compile scummvm without tremor, flac and mpeg2 support it works, but when I try to compile it with any of those three I can't.
Bossk, could you write a small tut about compiling these libs to see if I'm missing something, and some download links of the libs you used (version of the libs too) if possible?
These are the instructions for libTremor (for integer based vorbis decoding), the other libs are similar:
Code: Select all
cd libtremor/
CC=$DEVKITPRO/devkitPPC/bin/powerpc-gekko-gcc ./configure --host=ppc --disable-altivec --disable-sdl --disable-accel-detect
make
(don't worry IF the linking phase fails, you're only interested in the headers + .a file)
cp .libs/libvorbisidec.a $DEVKITPRO/devkitPPC/powerpc-gekko/lib/
mkdir -p $DEVKITPRO/devkitPPC/powerpc-gekko/include/tremor
cp *.h $DEVKITPRO/devkitPPC/powerpc-gekko/include/tremor
i wanted to post build instructions for a long time now, sorry i haven't... until now
find it here: http://wiki.scummvm.org/index.php/Compiling_ScummVM/Wii
if there is anything unclear just let me know
find it here: http://wiki.scummvm.org/index.php/Compiling_ScummVM/Wii
if there is anything unclear just let me know