On Wed, 30 Jul 2003 04:29:52 +0200 Alberto Bert <[EMAIL PROTECTED]> wrote:
> Hi, > > I've update perl but emerge don't want do it. > > bash-2.05b# emerge -pv perl > > These are the packages that I would merge, in order: > > Calculating dependencies ...done! > [blocks B ] <dev-perl/Test-Simple-0.47-r1 (from pkg > dev-lang/perl-5.8.0-r12) > [blocks B ] <dev-perl/File-Spec-0.84-r1 (from pkg > dev-lang/perl-5.8.0-r12) > [ebuild U ] dev-lang/perl-5.8.0-r12 [5.8.0-r10] +berkdb -doc +gdbm > -threads > > bash-2.05b# emerge perl > Calculating dependencies ...done! > > !!! Error: the <dev-perl/Test-Simple-0.47-r1 package conflicts with > this package and both can't be installed on the same system together. Unmerge those two packages that are blocked. Then emerge perl. Read this from the Gentoo Weekly Newsletter Radical changes to Perl module handling --------------------------------------- A new version of perl that radically changes the way that modules are handled is now available in ~arch, and is slated to appear in the 1.4 release. Perl has a list of directories in which it looks for modules called @INC, and the standard ordering of @INC is rather inconvenient for distribution maintainers. It is impossible to override the functionality of modules that are included in the core distribution without overwriting the files. That is what Gentoo has done to date, but it has some unfortunate side-effects. While one would expect that merging and unmerging a new version of ExtUtils-MakeMaker would return one's system to the state it was in before, it does not. Instead, ExtUtils::MakeMaker is completely wiped off the system, and the system becomes unable to install any more modules. In perl 5.8.0-r12 and beyond, @INC is augmented and reordered, so that versions of files in the core are actually near the bottom of the chain, and can be overridden easily in two well-defined ways: by the vendor directories and the site directories. Files in the site directories in turn can override those in the vendor directories. After 5.8.0-r12 has been widely installed, we will change the perl-module eclass so that all ebuilds in dev-perl that use it will install their files into the vendor directory. Up to now, they use the site directory. The site directory is the perl equivalent of /usr/local in the current opinion of the Gentoo perl team, and we are going to give users complete control over what goes in there, so you will never have to worry about Gentoo ebuilds writing into your site directories any more, and you always have the last say about which version of a module is going to be used. Want to try a version from CPAN that's a little experimental? Go ahead, and then just delete it from the site directory, and you will have the version from the ebuild right there, without any need to reemerge it. No longer will depclean or unmerging perl modules disable critical perl functionality. However, since current versions of some perl module ebuilds that are already installed on people's systems lay claim to critical files in the perl core, you need to get those off of your systems before emerging perl-5.8.0-r12. emerge will remind you of this by using blocking depends, so if you have the problematic versions of the packages installed, emerge -u world or emerge -u perl will abort with an error. Note that the version mentioned in the block is the safe version, because the block says it conflicts with anything prior to the safe version. Below is the list at this time of safe versions of the affected modules. Anything prior must be unmerged before emerging perl. Note that you do not necessarily need to remerge the safe version of these modules after installing perl 5.8.0-12, because the 5.8 core contains versions of these modules that are sufficiently recent for most uses. * ExtUtils-MakeMaker-6.05-r6 * File-Spec-0.84-r1 * Test-Simple-0.47-r1 > -- > [EMAIL PROTECTED] mailing list > -- Powered by GENTOO LINUX -- [EMAIL PROTECTED] mailing list
