Comment 2 for bug 535806

Revision history for this message
Sigra (sigra) wrote :

Logged In: YES
user_id=31104
Originator: YES

Here are my findings:

Using MNG from SDL:
===================
SDL_mng [http://cryptology.org/research/SDL MNG Library/]
SDL_mng-0.1 test report:
SDL_mng-0.1> ./autogen.sh
Generating aclocal.m4
/usr/share/aclocal/sdlmm.m4:12: warning: underquoted definition of AM_PATH_SDLMM
/usr/share/aclocal/sdlmm.m4:12: run info '(automake)Extending aclocal'
/usr/share/aclocal/sdlmm.m4:12: or see http://sources.redhat.com/automake/automake.html#Extending-aclocal
Generating Makefile.in
configure.ac:6: installing `./config.sub'
configure.ac:10: installing `./missing'
configure.ac:10: installing `./install-sh'
configure.ac:6: installing `./config.guess'
Makefile.am: installing `./depcomp'
configure.ac:14: required file `./ltmain.sh' not found
Generating configure file

I worked around the problem:
SDL_mng-0.1> ln -s /usr/share/libtool/ltmain.sh .
SDL_mng-0.1> ./autogen.sh
Generating aclocal.m4
/usr/share/aclocal/sdlmm.m4:12: warning: underquoted definition of AM_PATH_SDLMM
/usr/share/aclocal/sdlmm.m4:12: run info '(automake)Extending aclocal'
/usr/share/aclocal/sdlmm.m4:12: or see http://sources.redhat.com/automake/automake.html#Extending-aclocal
Generating Makefile.in
Generating configure file

Then configure works. But make ends with:
/bin/sh ./libtool --tag=CC --mode=link gcc -g -O2 -DLOAD_PNG -I/usr/include/SDL -D_GNU_SOURCE=1 -D_REENTRANT -o libSDL_mng.la -rpath /usr/local/lib SDL_mng.lo @IMG_LIBS@ -lpng -lz -lSDL -lpthread
gcc -shared .libs/SDL_mng.o /usr/lib/libpng12.so -lz /usr/lib/libSDL.so -L/usr/lib -lpthread @IMG_LIBS@ -Wl,-soname -Wl,libSDL_mng.so.0 -o .libs/libSDL_mng.so.0.0.0
gcc: @IMG_LIBS@: No such file or directory
make: *** [libSDL_mng.la] Fel 1

I commented out the line "libSDL_mng_la_LIBADD = @IMG_LIBS@" in Makefile.am and did "./autogen.sh;configure;make" again. Then I could run ./mngtest and see the dancing panda.

Creating MNG files:
===================
png2mng.pl (in kdesdk-scripts)
It is hardcoded for 4-digit frame numbers, but changing this line:
 $file = $basename.sprintf('%04d.png', $i+1);
to
 $file = $basename.sprintf('%02d.png', $i+1);
makes it accept files with 2-digit frame numbers, like in Widelands.

I tried to create a mng for the empire flag (tribes/empire/pics/flag_??.png):
png2mng.pl flag_ 32 42>flag.mng but the resulting file is not shown in
konqueror nor the SDL_mng test program. advmng can not handle it either.

Optimizing MNG files:
=====================
advancecomp (Gentoo package exists)
Manual says it is not general-purpouse but specifically for files generated by
the AdvanceMAME emulator.