Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Specific key requires an operator problem
View unanswered posts
View posts from last 24 hours

Goto page 1, 2  Next  
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
airflow
Apprentice
Apprentice


Joined: 14 Dec 2003
Posts: 173
Location: Vienna, Austria

PostPosted: Fri Feb 13, 2004 1:06 pm    Post subject: Specific key requires an operator problem Reply with quote

Mod Edit: This is a very common problem, so I'm making this topic sticky. I've also changed the title from "emerge broken?" to "Specific key requires an operator problem" - tomk
edit - unstuck since this doesn't seem to be an often duplicated post anymore. -masseya

Hi,

I am having troubles updating my gentoo-system. I synced the portage-tree, "emerge -vup" showed a lot of to be updated programs, but when I issued "emerge -vu" it could not complete the task. When I do an "emerge -vu" now, the output is

Code:
root@aquarius airflow # emerge -vu world
 
These are the packages that I would merge, in order:
 
Calculating world dependencies /Traceback (most recent call last):
  File "/usr/bin/emerge", line 2517, in ?
    if not mydepgraph.xcreate(myaction):
  File "/usr/bin/emerge", line 1135, in xcreate
    if not self.create(myk):
  File "/usr/bin/emerge", line 825, in create
    if not self.select_dep("/",mydep["/"],myparent=mp,myuse=myuse):
  File "/usr/bin/emerge", line 962, in select_dep
    myeb=portage.portdb.xmatch("bestmatch-visible",x)
  File "/usr/lib/portage/pym/portage.py", line 4690, in xmatch
    myval=best(self.xmatch("match-visible",None,mydep,mykey))
  File "/usr/lib/portage/pym/portage.py", line 4701, in xmatch
    myval=match_from_list(mydep,self.xmatch("list-visible",None,mydep,mykey))
  File "/usr/lib/portage/pym/portage.py", line 4687, in xmatch
    myval=self.gvisible(self.visible(self.cp_list(mykey)))
  File "/usr/lib/portage/pym/portage.py", line 4733, in visible
    mymatches=self.xmatch("match-all",x)
  File "/usr/lib/portage/pym/portage.py", line 4705, in xmatch
    myval=match_from_list(mydep,self.cp_list(mykey))
  File "/usr/lib/portage/pym/portage.py", line 3539, in match_from_list
    raise KeyError, "Specific key requires an operator (%s) (try adding an '=')" % (mydep)
KeyError: "Specific key requires an operator (net-www/epiphany-1.0.7) (try adding an '=')"

I am not sure what to do now - I want to add that i have injected epiphany-1.0.7 to prevent the building of Mozilla (I use Firebird and do not want to build the normal Mozilla, too).

regards,
airflow
Back to top
View user's profile Send private message
Halcy0n
Developer
Developer


Joined: 17 Sep 2003
Posts: 1682
Location: Freehold, NJ

PostPosted: Fri Feb 13, 2004 1:58 pm    Post subject: Reply with quote

Check in /var/cache/edb/world and look for the line that says epiphany. Either remove the version from the end or stick an = in front of it.
_________________
Mark Loeser
http://www.halcy0n.com
Back to top
View user's profile Send private message
airflow
Apprentice
Apprentice


Joined: 14 Dec 2003
Posts: 173
Location: Vienna, Austria

PostPosted: Fri Feb 13, 2004 2:26 pm    Post subject: Reply with quote

HaLCy0n wrote:
Check in /var/cache/edb/world and look for the line that says epiphany. Either remove the version from the end or stick an = in front of it.


There is no epiphany-entry in this file.

regards,
airflow
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9501
Location: beyond the rim

PostPosted: Fri Feb 13, 2004 3:40 pm    Post subject: Reply with quote

Also check files in /etc/portage if present
Back to top
View user's profile Send private message
plurk
n00b
n00b


Joined: 13 Feb 2004
Posts: 1

PostPosted: Fri Feb 13, 2004 4:51 pm    Post subject: Encountering a similar problem Reply with quote

I'm encountering a similar problem, but only when specifying the build version number. IE:

Code:

emerge -p sys-libs/pam-0.77

These are the packages that I would merge, in order:

Calculating dependencies
!!! Problem in sys-libs/pam-0.77 dependencies.
!!! "Specific key requires an operator (sys-libs/pam-0.77) (try adding an '=')"


Same weird error, but:

Code:

emerge -p pam

These are the packages that I would merge, in order:

Calculating dependencies ...done!
[ebuild     U ] sys-devel/autoconf-2.58 [2.57-r1]
[ebuild     U ] sys-libs/cracklib-2.7-r8 [2.7-r7]
[ebuild     U ] sys-libs/pam-0.77 [0.75-r11]


It's not a major problem for me, but it looks like some sort of bug either in my configuration or in emerge.[/code]
Back to top
View user's profile Send private message
airflow
Apprentice
Apprentice


Joined: 14 Dec 2003
Posts: 173
Location: Vienna, Austria

PostPosted: Fri Feb 13, 2004 6:18 pm    Post subject: Reply with quote

Mmh. Seems to be a weird bug in portage... Here is what I've done: First I changed (just added the "=") /etc/portage/package.mask to

Code:
root@aquarius portage # cat /etc/portage/package.mask
=net-www/epiphany-1.0.7


After that, the error-message changed to

Code:
root@aquarius portage # emerge -vup world
 
These are the packages that I would merge, in order:
 
Calculating world dependencies /gnome
gnome
gnome
gnome
gnome
 
!!! all ebuilds that could satisfy ">=net-www/epiphany-1.0.7" have been masked.
!!! possible candidates are:
gnome
- net-www/epiphany-1.0.7 (masked by: package.mask)
!!!    (dependency required by "gnome-base/gnome-2.4.2" [ebuild])
 
!!! Problem with ebuild gnome-base/gnome-2.4.2
!!! Possibly a DEPEND/*DEPEND problem.
 
!!! Depgraph creation failed.


I don't understand the message. emerge complains that it can't build epiphany-1.0.7, because it is masked. It is true that it is masked, but it's injected too, so emerge should think that it's already built!?

Finally, I completely removed the package.mask file with the oneliner. Then it worked again. I'm masking the epiphany ebuild to prevent it from being built when the version number increases. So that I won't have to inject it every time again when a new version is introduced. Seems it doesn't work this way... So I'll have to look at the output "emerge -vup" carefully in the future to see if it wants to built a new version of epiphany (which I do not want). Is there a better solution?

regards,
airflow
Back to top
View user's profile Send private message
tomk
Bodhisattva
Bodhisattva


Joined: 23 Sep 2003
Posts: 7221
Location: Sat in front of my computer

PostPosted: Fri Aug 06, 2004 1:53 pm    Post subject: Reply with quote

Other places to look for missing operators are files in these directories:

Code:
/var/cache/edb/
/var/lib/portage/


Anyone having problems with maksed packages should read this FAQ
_________________
Search | Read | Answer | Report | Strip
Back to top
View user's profile Send private message
Gentree
Watchman
Watchman


Joined: 01 Jul 2003
Posts: 5350
Location: France, Old Europe

PostPosted: Fri Aug 06, 2004 3:54 pm    Post subject: Reply with quote

Hi,

You should look at the bit where it says it is a DEPEND/*DEPEND problem.

Yeah, it means not a lot as an error msg but I think it is your pb.

I had a similar pb on another package a while back. Check out this thread for an explaination.

https://forums.gentoo.org/viewtopic.php?t=184989&highlight=depend+gentree

HTH 8)
_________________
Linux, because I'd rather own a free OS than steal one that's not worth paying for.
Gentoo because I'm a masochist
AthlonXP-M on A7N8X. Portage ~x86
Back to top
View user's profile Send private message
Duck-Billed Platypus
Guru
Guru


Joined: 30 Jun 2003
Posts: 576
Location: Los Angeles, California, United States of America

PostPosted: Thu Aug 12, 2004 4:20 pm    Post subject: Reply with quote

Sometimes I get this error when I unmask a hard-masked version of gcc. I checked the ebuild file, but all the dependencies I'm able to emerge...

I think you're supposed to add the = when you're specifying a specific version ie
Code:
emerge -p =sys-libs/pam-0.77

_________________
Dentists are evil.
Back to top
View user's profile Send private message
Duck-Billed Platypus
Guru
Guru


Joined: 30 Jun 2003
Posts: 576
Location: Los Angeles, California, United States of America

PostPosted: Thu Aug 12, 2004 4:26 pm    Post subject: Reply with quote

airflow wrote:
...

What happens if you put net-www/epiphany into /etc/portage/package.mask?

Also, in the rare case that you use a hard-masked version of portage (2.0.51) you should use /etc/portage/package.provided instead of inject.
_________________
Dentists are evil.
Back to top
View user's profile Send private message
OneOfMany
Tux's lil' helper
Tux's lil' helper


Joined: 19 Nov 2003
Posts: 108
Location: Portland, OR USA

PostPosted: Thu Aug 19, 2004 11:39 pm    Post subject: Reply with quote

I'm having this problem too, but so far I haven't found a fix for this in the info provided. Running this...
Code:
emerge -s syslog-ng

Gives me this...
Code:
Searching... \Traceback (most recent last call):
File "/usr/bin/emerge", line 2331, in ?
searchinstance.execute(mysearch)
File "/usr/bin/emerge", line 545, in execute
if not portage.portdb.xmatch("match-visible",package):
File "/usr/lib/portage/pym/portage.py", line 4710, in xmatch
myval=match_from_list(mydep,self.xmatch("list-visible",None,mydep,mykey))
File "/usr/lib/portage/pym/portage.py", line 3537, in match_from_list
raise KeyError, "Specific key requires an operator (%s) (try adding an '=')" % mydep
KeyError: "Specific key requires an operator (sys-admin/syslog-ng-1.6.4) (try adding an '=')"

I don't have any files in /etc/portage and I've looked in the folders listed above (/var/cache/edb and /var/lib/portage...this second one doesn't exist on my machine) but none have an entry without an '=' that I can fix. In /var/cache/edb/dep/ there seems to be a copy of some syslog-ng related stuff (has directories for a few different versions inside /var/cache/edb/dep/app-admin/) but I'm not sure if that's supposed to be there or not.

Thanks for your help.
Back to top
View user's profile Send private message
kallamej
Administrator
Administrator


Joined: 27 Jun 2003
Posts: 4975
Location: Gothenburg, Sweden

PostPosted: Sat Aug 21, 2004 10:46 am    Post subject: Reply with quote

OneOfMany wrote:

KeyError: "Specific key requires an operator (sys-admin/syslog-ng-1.6.4) (try adding an '=')"[/code]

Hmm, it borks on sys-admin/syslog-ng. The correct category is app-admin. Are the relevant entries in the world and virtuals files correct in this regard? Does some other file reference sys-admin/syslog-ng?
_________________
Please read our FAQ Forum, it answers many of your questions.
irc: #gentoo-forums on irc.libera.chat
Back to top
View user's profile Send private message
tdphys
n00b
n00b


Joined: 10 Oct 2003
Posts: 53
Location: Alberta

PostPosted: Fri Sep 03, 2004 3:06 pm    Post subject: Reply with quote

Okay.. had the same problem myself...
None of the things worked in the above thread... but I did find a
new file /etc/portage/package.keywords that seemed to be doing the same thing as package.mask in the same folder. Changing those entries
worked.
Back to top
View user's profile Send private message
kootenaykid
n00b
n00b


Joined: 26 Sep 2004
Posts: 33
Location: Victoria, Canada

PostPosted: Sun Sep 26, 2004 5:41 am    Post subject: Reply with quote

Ok I get this same error, but none of these solutions seems to be related.

I'm trying to emerge a third party ebuild for kirateradio. I added a entry to package.keywors and digested the ebuild yet I still get this error.

Code:

# emerge multimedia/kirateradio
Calculating dependencies
!!! Problem in multimedia/kirateradio dependencies.
!!! "Specific key requires an operator (null/kirateradio-0.1) (try adding an '=')"


This is my first forum post after installing and using gentoo(solely) for three weeks. A record for any of my linux installs. :)
Back to top
View user's profile Send private message
kootenaykid
n00b
n00b


Joined: 26 Sep 2004
Posts: 33
Location: Victoria, Canada

PostPosted: Sun Sep 26, 2004 6:50 am    Post subject: Reply with quote

Now I feel stupid. :oops: It was simple. I need the '=' sign in my package.keywords file if I want to specify a version number. e.g.
Code:
=multimedia/kirateradio-0.1 ~amd64
Back to top
View user's profile Send private message
chINeSe mIDgEts
Apprentice
Apprentice


Joined: 02 Mar 2004
Posts: 209
Location: look behind you

PostPosted: Fri Oct 01, 2004 12:16 am    Post subject: Reply with quote

yes i get:
Code:

# emerge -p sys-libs/pam-0.77
Traceback (most recent call last):
  File "/usr/bin/emerge", line 14, in ?
    import portage
  File "/usr/lib/portage/pym/portage.py", line 6411, in ?
    for y in db["/"]["porttree"].dbapi.xmatch("match-all", x):
  File "/usr/lib/portage/pym/portage.py", line 4715, in xmatch
    myval=match_from_list(mydep,self.cp_list(mykey))
  File "/usr/lib/portage/pym/portage.py", line 3536, in match_from_list
    raise KeyError, "Specific key requires an operator (%s) (try adding an '=')" % (mydep)
KeyError: "Specific key requires an operator (media-video/realone-1) (try adding an '=')"


this happens if i emerge anything: world, sync, ANYTHING. even if i use -p option. even if i add the =. i really am completely lost on this one.
_________________
...it must have been very demanding having to learn how to use Microsoft Office, right up there with other lofty challenges like learning how to zip your fly without getting your dick caught.
Back to top
View user's profile Send private message
kallamej
Administrator
Administrator


Joined: 27 Jun 2003
Posts: 4975
Location: Gothenburg, Sweden

PostPosted: Fri Oct 01, 2004 7:18 am    Post subject: Reply with quote

You have two problems there.
chINeSe mIDgEts wrote:
Code:

# emerge -p sys-libs/pam-0.77


You need the '=' if you want to emerge a specific version.
chINeSe mIDgEts wrote:
Code:

    raise KeyError, "Specific key requires an operator (%s) (try adding an '=')" % (mydep)
KeyError: "Specific key requires an operator (media-video/realone-1) (try adding an '=')"


Search the above mentioned files for media-video/realone-1 and remove '-1' or add an '='.
_________________
Please read our FAQ Forum, it answers many of your questions.
irc: #gentoo-forums on irc.libera.chat
Back to top
View user's profile Send private message
redled
n00b
n00b


Joined: 06 Feb 2003
Posts: 8
Location: Russia

PostPosted: Sat Oct 16, 2004 7:36 am    Post subject: Reply with quote

Same problem here:
Code:
kwas@redled ~ % sudo emerge -u apache-1.3.31-r3
Calculating dependencies   

!!! Problem in net-www/apache-1.3.31-r3 dependencies.
!!! "Specific key requires an operator (net-www/apache-1.3.31-r3) (try adding an '=')" exceptions
kwas@redled ~ % sudo emerge -u =apache-1.3.31-r3
zsh: apache-1.3.31-r3 not found
kwas@redled ~ % sudo emerge -u =net-www/apache-1.3.31-r3
zsh: net-www/apache-1.3.31-r3 not found
kwas@redled ~ % ls /usr/portage/net-www/apache
apache-1.3.29-r2.ebuild  apache-2.0.50.ebuild     files
apache-1.3.31.ebuild     apache-2.0.51.ebuild     Manifest
apache-1.3.31-r1.ebuild  apache-2.0.51-r1.ebuild  metadata.xml
apache-1.3.31-r2.ebuild  apache-2.0.52.ebuild
apache-1.3.31-r3.ebuild  ChangeLog
kwas@redled ~ %

Is there any solution?
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9501
Location: beyond the rim

PostPosted: Sat Oct 16, 2004 2:37 pm    Post subject: Reply with quote

maybe you have to quote the = in zsh ...
Back to top
View user's profile Send private message
redled
n00b
n00b


Joined: 06 Feb 2003
Posts: 8
Location: Russia

PostPosted: Mon Oct 18, 2004 6:32 pm    Post subject: Reply with quote

Genone wrote:
maybe you have to quote the = in zsh ...

It works, thanks!
But if the first error message concers quotes, it was rather confusing...
Back to top
View user's profile Send private message
kallamej
Administrator
Administrator


Joined: 27 Jun 2003
Posts: 4975
Location: Gothenburg, Sweden

PostPosted: Mon Oct 18, 2004 7:55 pm    Post subject: Reply with quote

redled wrote:
Genone wrote:
maybe you have to quote the = in zsh ...

It works, thanks!
But if the first error message concers quotes, it was rather confusing...

The first error message was about emerge requiring an operator such as '=' or '>' if you append a version number to the package you want to install. In contrast to bash, zsh then required that operator be quoted.
_________________
Please read our FAQ Forum, it answers many of your questions.
irc: #gentoo-forums on irc.libera.chat
Back to top
View user's profile Send private message
redled
n00b
n00b


Joined: 06 Feb 2003
Posts: 8
Location: Russia

PostPosted: Wed Oct 20, 2004 7:45 am    Post subject: Reply with quote

I'm understand. But will it be more informative, if it will write, say, 'try to put equals sign in quotes'?
Back to top
View user's profile Send private message
Genone
Retired Dev
Retired Dev


Joined: 14 Mar 2003
Posts: 9501
Location: beyond the rim

PostPosted: Wed Oct 20, 2004 12:16 pm    Post subject: Reply with quote

Well, it depends on your shell and we can't really put solutions to all prossible problems in the error message.
Back to top
View user's profile Send private message
balinares
n00b
n00b


Joined: 21 Dec 2002
Posts: 25

PostPosted: Thu Oct 21, 2004 11:09 pm    Post subject: Reply with quote

Genone wrote:
Well, it depends on your shell and we can't really put solutions to all prossible problems in the error message.


You might, however, want to make the error message tell WHERE the problem is -- command line, some specific file, etc. It would make a WORLD of difference, really. Thanks.
Back to top
View user's profile Send private message
larand54
l33t
l33t


Joined: 20 Feb 2004
Posts: 695
Location: Sweden

PostPosted: Sun Dec 05, 2004 12:28 pm    Post subject: Reply with quote

Nothing here helped me... :cry:

This is what I get:
Code:

bash-2.05b# emerge -avDu development-sources-2.6.10_rc3

These are the packages that I would merge, in order:

Calculating dependencies

!!! Problem in sys-kernel/development-sources-2.6.10_rc3 dependencies.
!!! "Specific key requires an operator (sys-kernel/development-sources-2.6.10_rc3) (try adding an '=')" exceptions
bash-2.05b#     


Where am I supposed to put that '=' ?

I have tried /etc/portage/package.keywords, .umask
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum