OVH Cloud OVH Cloud

Dépendances

9 réponses
Avatar
M
Bonjour,

Je tente d'installer zinf, à partir d'un rpm. (Mandrake 9.1)
Pb de dépendance : libmusicbrainz.so.2 est requis lors du 'rpm -i
zinf'.
Je récupère donc libmusicbrainz.src.rpm, je compile et installe.
J'ai bien libmuscibrainz.so.2 dans /usr/local/lib maintenant.

Mais au rpm -i zinf, il me dit toujours :
libmusicbrainz.so.2 is needed...

Comment dire à rpm que j'ai installé la librairie ? Alors que je ne
l'ai
pas installé via rpm, mais en faisant un make/make install manuel.

Merci
M

9 réponses

Avatar
Madcow
Je connais pas la mandrake, mais tente de taper "ldconfig", ca met a
jour les librairies et plein d'autres trucs... je garantie rien, mais
sur ma slackware, c'est quasi indispensable apres chaque installation
de librairie.

--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com
Avatar
no_spam
On Mon, 17 May 2004 22:44:06 +0200, Madcow wrote:

Je connais pas la mandrake, mais tente de taper "ldconfig", ca met a
jour les librairies et plein d'autres trucs... je garantie rien, mais
sur ma slackware, c'est quasi indispensable apres chaque installation
de librairie.


Précision:
ldconfig ne met pas à jour les librairies, il met à jour le cache
du linker dynamique.
Le linker dynamique s'appelle généralement /lib/ld.so.2
C'est lui qui est chargé de lancer tous les programmes dynamiques.
En effet, ceux-ci ne savent pas se lancer tous seuls.
Le linker dynamique charge les librairies pour le programme à son
lancement (en gros, c'est en fait un peu plus compliqué).
Pour accélérer le lancement des programmes, il utilise un cache.
Si on supprime ce cache, ldconfig ne sert à rien.
Par contre, si les libraries sont cachées, il faut absolument mettre
à jour le cache quand on met à jour une librairie dynamique, sinon
les programmes qui se servent de cette lib ont de grandes chances
de crasher au chargement.
A noter que la plupart des distribs executent ldconfig dans les scripts
d'update des librairies dynamiques ce qui fait qu'il devient très
rarement nécéssaire de le faire à la main...

Avatar
M
Madcow avait énoncé :
Je connais pas la mandrake, mais tente de taper "ldconfig", ca met a jour les
librairies et plein d'autres trucs... je garantie rien, mais sur ma
slackware, c'est quasi indispensable apres chaque installation de librairie.


Ca ne change rien... Je ne sais toujours pas comment prévenir rpm
qu'une librairie
a été installée manuellement (sans rpm)...
M

Avatar
X.B
Bonjour,

Je tente d'installer zinf, à partir d'un rpm. (Mandrake 9.1)
Pb de dépendance : libmusicbrainz.so.2 est requis lors du 'rpm -i
zinf'.
Je récupère donc libmusicbrainz.src.rpm, je compile et installe.
J'ai bien libmuscibrainz.so.2 dans /usr/local/lib maintenant.
et un rpm --rebuild, pour garder coherente ta base d'install ? ça

t'intresse ?

NOM
rpm - Gestionnaire de Paquetages Red Hat.

SYNOPSIS
rpm [options]
...
Construction :
rpm [-b|t] [spec_paquetage]+
rpm [--rebuild] [source_rpm]+
rpm [--tarbuild] [source_tarree]+


Mais au rpm -i zinf, il me dit toujours :
libmusicbrainz.so.2 is needed...

Comment dire à rpm que j'ai installé la librairie ? Alors que je ne
l'ai pas installé via rpm, mais en faisant un make/make install manuel.


Mais si tu es !SUR! que toutes les dependances sont realisées, alors un man
rpm t'aurait suggere l'option --nodeps :

--nodeps
Ne pas effectuer de verification de dependances avant
d'installer ou de mettre a niveau un paquetage.

rpm -i --nodeps zinf

Avatar
M
et un rpm --rebuild, pour garder coherente ta base d'install ? ça t'intresse
?


Oui ! Je crois que c'est la bonne piste.
Mais rpm --rebuild me dit :
'/usr/lib/rpm/rpmb' : no such file or directory.

C'est un package à part à installer ?

Merci.
M

Avatar
M
OK, j'essaie d'installer rpm-build. Mais il y a encore des pb de
dépendances :

#rpm -i rpm-build-4.2.2-7
rpm = 4.2.2-7 is needed by rpm-build-4.2.2-7

#rpm -i rpm-4.2.2-7
popt = 1.8.2-7 is needed by rpm-4.2.2-7

#rpm -i popt-1.8.2-7.i586.rpm
file libopt.so.0.0.0 from install of popt-1.8.2-7 conflicts from
package popt-1.6.4-28

#rpm -U popt-1.8.2-7.i586.rpm
popt = 1.6.4-28 is needed by rpm-4.0.4-28

#rpm -qa | grep popt
popt-1.6.4-28

Une idée ?
Merci,

M
Avatar
Paul Pygeon
Le 18 Mai 2004 06:51 M a écrit en cette journée dans
fr.comp.os.linux.configuration:

Oui ! Je crois que c'est la bonne piste.
Mais rpm --rebuild me dit :
'/usr/lib/rpm/rpmb' : no such file or directory.

C'est un package à part à installer ?


C'est plutôt rpm --rebuilddb.

Je vous suggère aussi de vérifer si /usr/local/lib est bien inscrit dans
votre ld.so.conf. Dans le cas contraire, l'inscrire et faire ldconfig.
Normalement, les librairies dans /usr/local/lib seront alors prises en
compte. À ce moment vous n'auriez pas besoin d'utiliser l'option --nodeps
de rpm.

Bonne chance.

Avatar
Paul Pygeon
Le 18 Mai 2004 08:37 M a écrit en cette journée dans
fr.comp.os.linux.configuration:

OK, j'essaie d'installer rpm-build. Mais il y a encore des pb de
dépendances :

#rpm -i rpm-build-4.2.2-7
rpm = 4.2.2-7 is needed by rpm-build-4.2.2-7

#rpm -i rpm-4.2.2-7
popt = 1.8.2-7 is needed by rpm-4.2.2-7

#rpm -i popt-1.8.2-7.i586.rpm
file libopt.so.0.0.0 from install of popt-1.8.2-7 conflicts from
package popt-1.6.4-28

#rpm -U popt-1.8.2-7.i586.rpm
popt = 1.6.4-28 is needed by rpm-4.0.4-28

#rpm -qa | grep popt
popt-1.6.4-28

Une idée ?
Merci,

Pourquoi vouloir installer rpm-build, sauf si vous voulez construire vos

propres rpms. Je vous conseille plutôt d'utiliser urpmi, car il installe
toutes les dépendances nécessaires en même temps que le programme souhaité?

Bonne chance.

Avatar
M
Pourquoi vouloir installer rpm-build, sauf si vous voulez construire vos
propres rpms. Je vous conseille plutôt d'utiliser urpmi, car il installe
toutes les dépendances nécessaires en même temps que le programme souhaité?


En effet, c'est la solution que j'ai utiliée pour résoudre mon
problème.

Merci.