Sébastien MORAND schreef:
>> You clearly know how to clear a block, but your syntax for 
>> unmerging the blocking packages is wrong, which is why it's not 
>> working.
>> 
>> If you want to unmerge the specific version of the package (for 
>> this example, let us assume php-5.0.5), the correct syntax is
>> 
>> emerge -C =dev-php/php-5.0.5
>> 
>> If you want to unmerge "any or all" versions of the package 
>> currently installed, letting Portage decide which to unmerge, the 
>> correct syntax is
>> 
>> emerge -C php
> 
> 
> Ok, but this will remove php-5, and that's not what I want. I want to
>  remove dev-php/php any version, but I do that (I think the right 
> syntax to do it is emerge -C dev-php/php), I got the previous 
> message, obvisoualy there is an inconsistence on my system: - To 
> update a package that is blocked by another package is required - The
>  required package is not installed.

No, the right syntax to do that (remove php any and all versions) is

emerge -C php

There is no syntax that includes the cat-egory without both a version
number and a mathematical symbol, such as

emerge -C >=dev-php/php-5.0.5 (unmerges all versions greater than or
equal to php-5.0.5)
emerge -C =dev-php/php-5.0.5 (unmerges only php-5.0.5)
emerge -C <dev-php/php-5.0.5 (unmerges all versions lower than php-5.0.5)

emerge -C dev-lang/php is not valid, because it includes the cat-egory
(dev-lang) without specifying a version.

If you don't want to specify a version, only use the package name,
without the category. If you want to specify a version, use a
mathematical symbol (for precision, using =, >, and < either alone or in
combination with each other), aand the version number.

> 
> It looks like the point is php has migrated. The version 4.x and 
> below are located in dev-php and the version 5.x and above are locate
>  in dev-lang, so is there an inconsistency in the portage tree when 
> unmasking php-5.x and above?

Well, yes and no. If you ultimately want php v.5 on your system, unmerge
the current version, then re-emerge =dev-lang/php-5.0.5, then see if it
still blocks the program you are trying to emerge. It's possible that
the block exists because of the php migration to a new category, and the
program itself needs to be unmerged and re-emerged with the correct
category, rather than a block due to functionality clash between the two
programs.

If the block remains, it's because the program you're trying to emerge
either will
emerge php v.5 as a dependency or the program replicates its function in
some way, so  unmerge 5.0.5 (again), and emerge what was blocked by it,
then re-(re-)emerge php-5.0.5 (if you still need to do that).

HTH,
Holly
-- 
gentoo-user@gentoo.org mailing list

Reply via email to