• [^] # Re: Mandrakelinux 10.0 Official est arrivée !

    Posté par . En réponse à la dépêche Mandrakelinux 10.0 Official est arrivée !. Évalué à 5.

    Je parle des "Requires:" dans le fichier spec. Ils sont ajouté manuellement.

    Ben oui, quel robot pourrait trouver que libtool >= 1.4.3-5mdk dans rpm-build soit nécessaire pour que le build de packages amd64 fonctionne décemment?

    J'ai regardé find-req.pl et c'est une connerie de faire ça. Ça ajoute des dépendances inutiles. Si un programme a uniquement besoin de libX11.so je ne vois pas pourquoi il faut ajouter libc puisque le paquet qui fournit libX11.so a déjà cette dépendance. Aucun intérêt. C'est uniquement pour empêcher l'installation sur une autre bécane.

    Tes deux dernières phrases entrent en conflit. D'une part, un programme ne peut avoir besoin que de libX11.so.6. D'autre part, si le programme dépend de libX11.so.6, libc.so.6, libm.so.6, tu vois trivialement dans le package qui fournit libX11.so.6, qu'il dépend également de libc.so.6, donc la dépendence sur libc.so.6 pour le programme d'origine, n'empêche nullement l'installation sur une autre bécane. De plus, un programme ne peut dépendre de libX11.so tout court, vu que libX11.so est le linkname, et ce qu'il y a dans les entrées DT_NEEDED du programme ce sont les libs qui ont des SONAMEs idoines.

    Avec Mandrake au-lieu d'avoir un simple "Requires: libtoto.so.0" (fait automatiquement) il y a aussi "Requires: libtoto0".

    Précise pour quel package car il ne doit plus en rester telles que "Requires: libtoto0", sauf s'il faut une dépendence explicite sur une certaine libtoto0. e.g. Requires: %{libtoto} = version-release, ou %{libtoto} >= version (plus rare mais là on c'est qu'on est sûr que c'est binary compatible depuis cette version).