Trouble compiling 2.4.0

Hi, I'm having trouble compiling MOC 2.4.0. Here's the cosole output:

[patrick@localhost moc-2.4.0]$ make
make all-recursive
make[1]: Entering directory `/home/patrick/moc-2.4.0'
Making all in themes
make[2]: Entering directory `/home/patrick/moc-2.4.0/themes'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/patrick/moc-2.4.0/themes'
Making all in decoder_plugins
make[2]: Entering directory `/home/patrick/moc-2.4.0/decoder_plugins'
make[3]: Entering directory `/home/patrick/moc-2.4.0/decoder_plugins'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/home/patrick/moc-2.4.0/decoder_plugins'
make[2]: Leaving directory `/home/patrick/moc-2.4.0/decoder_plugins'
make[2]: Entering directory `/home/patrick/moc-2.4.0'
/bin/sh ./libtool --tag=CC --mode=link gcc -pthread -g -O2 -Wall -W -export-dynamic -o mocp -lm -lncurses log.o protocol.o server.o main.o common.o playlist.o fifo_buf.o out_buf.o audio.o decoder.o interface.o interface_elements.o menu.o files.o options.o player.o playlist_file.o themes.o keys.o ltdl.o io.o compat.o audio_conversion.o rbtree.o tags_cache.o utf8.o oss.o null_out.o -lm
gcc -g -O2 -Wall -W -o mocp log.o protocol.o server.o main.o common.o playlist.o fifo_buf.o out_buf.o audio.o decoder.o interface.o interface_elements.o menu.o files.o options.o player.o playlist_file.o themes.o keys.o ltdl.o io.o compat.o audio_conversion.o rbtree.o tags_cache.o utf8.o oss.o null_out.o -Wl,--export-dynamic -pthread -lncurses -lm
ltdl.o(.text+0x5e8): In function `sys_dl_open':
/home/patrick/moc-2.4.0/ltdl.c:1107: undefined reference to `dlopen'
ltdl.o(.text+0x5e8):/home/patrick/moc-2.4.0/ltdl.c:1107: relocation truncated to fit: R_PPC_REL24 dlopen
ltdl.o(.text+0x620):/home/patrick/moc-2.4.0/ltdl.c:1111: undefined reference to `dlerror'
ltdl.o(.text+0x620):/home/patrick/moc-2.4.0/ltdl.c:1111: relocation truncated to fit: R_PPC_REL24 dlerror
ltdl.o(.text+0x634):/home/patrick/moc-2.4.0/ltdl.c:1111: undefined reference to `dlerror'
ltdl.o(.text+0x634):/home/patrick/moc-2.4.0/ltdl.c:1111: relocation truncated to fit: R_PPC_REL24 dlerror
ltdl.o(.text+0x664): In function `sys_dl_close':
/home/patrick/moc-2.4.0/ltdl.c:1124: undefined reference to `dlclose'
ltdl.o(.text+0x664):/home/patrick/moc-2.4.0/ltdl.c:1124: relocation truncated to fit: R_PPC_REL24 dlclose
ltdl.o(.text+0x67c):/home/patrick/moc-2.4.0/ltdl.c:1126: undefined reference to `dlerror'
ltdl.o(.text+0x67c):/home/patrick/moc-2.4.0/ltdl.c:1126: relocation truncated to fit: R_PPC_REL24 dlerror
ltdl.o(.text+0x6ac):/home/patrick/moc-2.4.0/ltdl.c:1131: undefined reference to `dlerror'
ltdl.o(.text+0x6ac):/home/patrick/moc-2.4.0/ltdl.c:1131: relocation truncated to fit: R_PPC_REL24 dlerror
ltdl.o(.text+0x6dc): In function `sys_dl_sym':
/home/patrick/moc-2.4.0/ltdl.c:1139: undefined reference to `dlsym'
ltdl.o(.text+0x6dc):/home/patrick/moc-2.4.0/ltdl.c:1139: relocation truncated to fit: R_PPC_REL24 dlsym
ltdl.o(.text+0x714):/home/patrick/moc-2.4.0/ltdl.c:1143: undefined reference to `dlerror'
ltdl.o(.text+0x714):/home/patrick/moc-2.4.0/ltdl.c:1143: relocation truncated to fit: R_PPC_REL24 dlerror
ltdl.o(.text+0x728):/home/patrick/moc-2.4.0/ltdl.c:1143: undefined reference to `dlerror'
ltdl.o(.text+0x728):/home/patrick/moc-2.4.0/ltdl.c:1143: relocation truncated to fit: R_PPC_REL24 dlerror
collect2: ld returned 1 exit status
make[2]: *** [mocp] Error 1
make[2]: Leaving directory `/home/patrick/moc-2.4.0'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/patrick/moc-2.4.0'
make: *** [all] Error 2

Any suggestions on how to fix this?

You have to install libtool and libltdl. Look for the libltdl-dev package of your distri.

Elimar
--
The path to source is always uphill ;-)

Thanks for the quick reply, but I tried installing libtool (libltdl is part of libtool right?) with both yum, and from the gnu libtool website, and I still get the same error.

Is there anything else I could try?

There has been similar problem here: http://moc.daper.net/node/66, but I can't find any solution and reason why you don't have libdl. What is you operating system?

--
Damian Pietras - MOC developer

I'm running Yellow Dog Linux 3.0 (Equivalent to RH 9 I think) on an old PowerMac I have lying around. Thanks a lot for looking into this by the way, MOC looks awesome.

Uname:

[patrick@localhost patrick]$ uname -a
Linux localhost.localdomain 2.4.22-2f #1 Sun Nov 9 16:49:49 EST 2003 ppc ppc ppc GNU/Linux

Oh, also, I tried doing a ./configure LDFLAGS='-lld' as well as 'lld' and '--lld' just to make sure that they don't work. They don't. Also, I obviously have no idea what those flags do.

Maybe ./configure LDFLAGS='-ldl' (typo).

--
Damian Pietras - MOC developer

Hmm, it seems I was missing a couple dependencies, as I realised I hadn't actually installed libid3tag, but after I did so, ./configure LDFLAGS='-ldl' did the trick.

Thanks a lot, MOC is awesome. Is there any information you need from me to help other people avoid the same problem, or do you think it was just a freak occurance with my system's setup?

I think it's a bug in the configure script, not in your system.

--
Damian Pietras - MOC developer

[skip]
ltdl.o(.text+0x431):/home/hip/soft/moc-2.4.0/ltdl.c:1131: undefined reference to `dlerror'
ltdl.o(.text+0x457): In function `sys_dl_sym':
/home/hip/soft/moc-2.4.0/ltdl.c:1139: undefined reference to `dlsym'
ltdl.o(.text+0x47a):/home/hip/soft/moc-2.4.0/ltdl.c:1143: undefined reference to `dlerror'
ltdl.o(.text+0x48a):/home/hip/soft/moc-2.4.0/ltdl.c:1143: undefined reference to `dlerror'
collect2: ld returned 1 exit status
make[2]: *** [mocp] Error 1
make[2]: Leaving directory `/home/hip/soft/moc-2.4.0'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/hip/soft/moc-2.4.0'
make: *** [all] Error 2

hip:[/home/hip]$ uname -a
Linux hip 2.6.8-2-686 #1 Tue Aug 16 13:22:48 UTC 2005 i686 GNU/Linux

ps. Your console player is the best! Thanks a lot!

Sorry my bad english.