Brak libmikmod?

Siema.
Próbuję sobie w środowisku linuxowym (ixemul) skompilować gierkę, która wymaga biblioteki SDL_mixer, która z kolei wymaga biblioteki libmikmod (w sensie bez niej też się skompiluje, tyle że nie będzie obsługiwać modów, co akurat jest mi potrzebne). No i wszystko ładnie-pięknie, libmikmod w wersji 3.1.21 się kompiluje, ale SDL_mixer podczas sprawdzania zainstalowanych bibliotek stwierdza:

checking for libmikmod-config... /bin/libmikmod-config
checking for libmikmod - version >= 3.1.10...
configure: WARNING *** Unable to find MikMod library

i to samo , kiedy zainstaluję wersję 3.2.0.
Komenda “libmikmod-config --version” zwraca numerek 3.1.21. Tak wygląda zawartość pliku /lib/pkgconfig/libmikmod.pc:

prefix=/usr
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: libmikmod
Description: Library for playing Module Files and for Sound Effects
Version: 3.1.21
URL: http://mikmod.sourceforge.net/
Libs: -L${libdir} -lmikmod
Libs.private: -lm
Cflags: -I${includedir}

Co jest zatem nie tak?

Sprawdź czy nie masz linkowania do starszej wersji. W wielu dystrybucjach czesto jest tak, że nazwa biblioteki jest tylko linkiem symbolicznym, do konkretnej wersji.

eee… a jak to się sprawdza? :stuck_out_tongue: Lama linuxowa ze mnie, to nie wiem. Ale linkiem symbolicznym to raczej chyba nie jest, skoro sam tego libmikmoda ściągnąłem i skompilowałem…

Jeśli instalujesz ręcznie to musisz poinformować system o nowszej wersji biblioteki:
# ldconfig

Jeśli instalujesz w niestandardowej lokalizacji, np. /usr/local/lib, ldconfig ma wyglądać tak:
# ldconfig -n /usr/local/lib

Pokaż co zwraca polecenie:
pkg-config --version libmikmod

1 polubienie