[PORTMASTER] dépendances circulaires
Le
Che Averell
Hello,
J'ai installé sur mon FreeBSD quelques mises à jour de sécurité, et
portmaster m'a proposé de mettre à jour Perl. Groumpf.
Ensuite, j'ai voulu réinstaller tous les modules perl, avec la
commande :
# portmaster p5-
Et, là, portmaster part en vrille, parce qu'il a détecté que p5-libwww
a comme dépendance lui-même :
>>> Launching child to update p5-libwww-5.837 to p5-libwww-6.02_1
p5-libwww-5.837 >> p5-libwww-5.837 >> p5-libwww-5.837 >>
>> p5-libwww-5.837 >> p5-libwww-5.837 >> p5-libwww-5.837 >>
>> p5-libwww-5.837
>>> Port directory: /usr/ports/www/p5-libwww
>>> Launching 'make checksum' for www/p5-libwww in background
>>> Gathering dependency list for www/p5-libwww from ports
>>> The dependency for net/p5-Net-HTTP
seems to be handled by p5-libwww-5.837
Comment on traite correctement ce cas ?
En attendant, la commande "perl-after-upgrade" règle le problème, mais
j'ai toujours un soucis de mise à jour.
'rci !
J'ai installé sur mon FreeBSD quelques mises à jour de sécurité, et
portmaster m'a proposé de mettre à jour Perl. Groumpf.
Ensuite, j'ai voulu réinstaller tous les modules perl, avec la
commande :
# portmaster p5-
Et, là, portmaster part en vrille, parce qu'il a détecté que p5-libwww
a comme dépendance lui-même :
>>> Launching child to update p5-libwww-5.837 to p5-libwww-6.02_1
p5-libwww-5.837 >> p5-libwww-5.837 >> p5-libwww-5.837 >>
>> p5-libwww-5.837 >> p5-libwww-5.837 >> p5-libwww-5.837 >>
>> p5-libwww-5.837
>>> Port directory: /usr/ports/www/p5-libwww
>>> Launching 'make checksum' for www/p5-libwww in background
>>> Gathering dependency list for www/p5-libwww from ports
>>> The dependency for net/p5-Net-HTTP
seems to be handled by p5-libwww-5.837
Comment on traite correctement ce cas ?
En attendant, la commande "perl-after-upgrade" règle le problème, mais
j'ai toujours un soucis de mise à jour.
'rci !

Poser une question


Toujours un grand moment, et l'occasion de boire quelque litres de
café :-)
Et même pour les versions mineures (5.14 -> 5.14.4)
Je sais pas, j'utilise portupgrade et n'ai eu aucun souci en suivant les
instructions dans UPDATING :
------------------ >8 -----------------------
20110517:
AFFECTS: users of lang/perl*
AUTHOR:
lang/perl5.14 is out. If you want to switch to it from, for example
lang/perl5.12, that is:
Portupgrade users:
0) Fix pkgdb.db (for safety):
pkgdb -Ff
1) Reinstall new version of Perl (5.14):
env DISABLE_CONFLICTS=1 portupgrade -o lang/perl5.14 -f
perl-5.12.*
2) Reinstall everything that depends on Perl:
portupgrade -fr perl
Portmaster users:
portmaster -o lang/perl5.14 lang/perl5.12
Conservative:
portmaster p5-
Comprehensive (but perhaps overkill):
portmaster -r perl-
Note: If the "perl-" glob matches more than one port you will need to
specify the name of the Perl directory in /var/db/pkg
explicitly.
------------------ >8 -----------------------
Et c'est curieux, je n'ai pas eu de problème avec les dépendances
de p5-libwww
Portmaster s'appuie sur quoi ? ports/INDEX-X ou une DB à lui ?
Peut-être reconstruire l'un ou l'autre...
HTH,
--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
Wep, et là, c'est justement une version mineure : 5.12.3 -> 5.12.4.
Justement, j'ai suivi les instructions d'UPDATING.
D'après le man :
It does not use an external database to track what you have installed.
Rather it uses the existing ports infrastructure, including what is
located in /var/db/pkg.
Et c'est justement pour ça que j'ai préféré portmaster par rapport à
portupgrade.
Je ne pense pas avoir de soucis avec mon /var/db/pkg...
De toutes façons dans /var/db/pkg, tu n'as que les dépendances ascendantes :
| [ ~]$ cat /var/db/pkg/p5-libwww-6.02_1/+REQUIRED_BY
| p5-Mail-SpamAssassin-3.3.2_2
et pour le Makefile, il n'y a pas de bug :
| [ ~]$ less /usr/ports/www/p5-libwww/Makefile
| [...snip...]
| RUN_DEPENDS= p5-Authen-NTLM>=1.02:${PORTSDIR}/security/p5-Authen-NTLM
| p5-Encode-Locale>=0:${PORTSDIR}/converters/p5-Encode-Locale
| p5-File-Listing>=6:${PORTSDIR}/sysutils/p5-File-Listing
| p5-HTML-Parser>=0:${PORTSDIR}/www/p5-HTML-Parser
| p5-HTTP-Cookies>=6:${PORTSDIR}/www/p5-HTTP-Cookies
| p5-HTTP-Daemon>=6:${PORTSDIR}/www/p5-HTTP-Daemon
| p5-HTTP-Date>=6:${PORTSDIR}/www/p5-HTTP-Date
| p5-HTTP-Message>=6:${PORTSDIR}/www/p5-HTTP-Message
| p5-HTTP-Negotiate>=6:${PORTSDIR}/www/p5-HTTP-Negotiate
| p5-LWP-MediaTypes>=6:${PORTSDIR}/www/p5-LWP-MediaTypes
| p5-Net-HTTP>=6:${PORTSDIR}/net/p5-Net-HTTP
| p5-URI>=1.10:${PORTSDIR}/net/p5-URI
| p5-WWW-RobotRules>=6:${PORTSDIR}/www/p5-WWW-RobotRules
| [...snip...]
et pas de BUILD_DEPENDS
Ton problème est curieux... Je ferais quand même un make fetchindex pour être
sûr. Ou make index si tu as beaucoup de café :-)
--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
J'ai passé un "make fetchindex", et pas mieux. Je suis en train de
faire passer un "make index", mais je ne pense pas que ça change
grande chose...
Mais en fait ce qui me
parait curieux, c'est ça :
===>>> The dependency for net/p5-Net-HTTP
seems to be handled by p5-libwww-5.837
Hors, si on regarde p5-Net-HTTP, on a :
RUN_DEPENDS p5-Compress-Raw-Zlib>=0:${PORTSDIR}/archivers/p5-Compress-Raw-Zlib
p5-IO-Compress>=0:${PORTSDIR}/archivers/p5-IO-Compress
p5-IO-Socket-SSL>=1.38:${PORTSDIR}/security/p5-IO-Socket-SSL
BUILD_DEPENDS:= ${RUN_DEPENDS}
CONFLICTS= p5-libwww-5*
Hors, p5-libww-5 est la version actuellement installée, et il essaye
de mettre à jour vers p5-libwww-6.
Je ne vois rien de déconnant là dedans, et je ne comprends pas pourquoi
il essaye d'installer libwww à la place de p5-Net-HTTP...
Ah oui, là normalement portupgrade t'injurie ("will install same files
at the same place")
un pkgdb -F ne t'indique pas une "duplicate dependency" ?
Quand j'ai ce genre de problème, je désinstalle (pkg_delete -f) les
deux, et relance pkgdb -F qui en général donne le choix et/ou la marche
à suivre. portupgrade/portmaster ne sont pas parfaits, mais je préfère
leur granularité à celle de Debian. Avec un peu de méthode, on s'en sort
toujours.
--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)