Solved

Gentoo Emerge error "Specific key requires an operator"

Posted on 2004-04-20
11
10,349 Views
Last Modified: 2007-12-19
I have installed Gentoo 64bit on a Sun 420r.
When I try to emerge some programs I get the following output:

#emerge rtg -pv      

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

Calculating dependencies  
!!! all ebuilds that could satisfy "rtg" have been masked.
!!! possible candidates are:
- net-analyzer/rtg-0.7.4 (masked by: missing keyword)

!!! Error calculating dependencies. Please correct.
...
# emerge net-analyzer/rtg-0.7.4 -pv

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

Calculating dependencies  
!!! Problem in net-analyzer/rtg-0.7.4 dependencies.
!!! "Specific key requires an operator (net-analyzer/rtg-0.7.4) (try adding an '=')"


This happens on other programs as well, not just RTG.
Can someone explain to me what this means and how to correct it?
I don't really know a lot about Gentoo, so dumb it down a few notches for me, k?

TIA!
0
Comment
Question by:cdukes
  • 6
  • 5
11 Comments
 
LVL 1

Expert Comment

by:fyerk
Comment Utility
The "masked by: missing keyword" indicates that you need the ACCEPT_KEYWORDS environment variable. The 'specific key require[d]' indicates that you should prefix the package name with a '=' sign.

Try this:
> ACCEPT_KEYWORDS="~sparc"  emerge -pv  '=net-analyer/rtg-0.7.4'

And of course remove the 'p' flag when you're ready to install.

For more info on ACCEPT_KEYWORDS see the relevant part of /etc/make.conf under Advanced Masking. Also 'man emerge' contains some useful information on both KEYWORDS and operators.
0
 

Author Comment

by:cdukes
Comment Utility
Thanks for this :-)
When I try it, I get:
# ACCEPT_KEYWORDS="~sparc"  emerge -pv  '=net-analyer/rtg-0.7.4'

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

Calculating dependencies  
emerge: there are no masked or unmasked ebuilds to satisfy "=net-analyer/rtg-0.7.4".

!!! Error calculating dependencies. Please correct.


Any Ideas?
0
 
LVL 1

Expert Comment

by:fyerk
Comment Utility
Try emerging the ebuild file directly

emerge -pv /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild
0
 

Author Comment

by:cdukes
Comment Utility
Well...I thought that was gonna work, but:

# emerge -pv /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild

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

Calculating dependencies ...done!
[ebuild  N    ] net-analyzer/rtg-0.7.4   693 kB

Total size of downloads: 693 kB

[root@noc conf]# emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild      
Calculating dependencies ...done!
>>> emerge (1 of 1) net-analyzer/rtg-0.7.4 to /
>>> Downloading http://mirror.datapipe.net/gentoo/distfiles/rtg-0.7.4.tar.gz
--11:14:00--  http://mirror.datapipe.net/gentoo/distfiles/rtg-0.7.4.tar.gz
           => `/usr/portage/distfiles/rtg-0.7.4.tar.gz'
Resolving mirror.datapipe.net... 64.27.65.115
Connecting to mirror.datapipe.net[64.27.65.115]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 710,621 [application/x-gzip]

100%[======================================================================================>] 710,621       46.28K/s    ETA 00:00

11:14:13 (53.85 KB/s) - `/usr/portage/distfiles/rtg-0.7.4.tar.gz' saved [710621/710621]


!!! File is corrupt or incomplete. (Digests do not match)
>>> our recorded digest: c61ff1323701e2771bb5ff9cf67f1b77
>>>  your file's digest: 810c584caa6b944ff1752ce21f16a13e
!!! File does not exist: /usr/portage/distfiles//rtg-0.7.4.tar.gz


Now What?
P.S. Thanks for your help on this!
0
 
LVL 1

Expert Comment

by:fyerk
Comment Utility
A) Remove the existing distfile
    > rm /usr/portage/distfiles/rtg*

B) Reinstall
    > emerge -pv /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild

C) If you get the same error, remove the distfile and change your gentoo mirror:
    > rm /usr/portage/distfiles/rtg*
    > GENTOO_MIRRORS="ftp://gentoo.mirrors.pair.com/" emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild
0
Threat Intelligence Starter Resources

Integrating threat intelligence can be challenging, and not all companies are ready. These resources can help you build awareness and prepare for defense.

 

Author Comment

by:cdukes
Comment Utility
No dice :-(

 rm /usr/portage/distfiles/rtg*
# GENTOO_MIRRORS="ftp://gentoo.mirrors.pair.com/" emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild
Calculating dependencies ...done!
>>> emerge (1 of 1) net-analyzer/rtg-0.7.4 to /
>>> Downloading ftp://gentoo.mirrors.pair.com/distfiles/rtg-0.7.4.tar.gz
--11:27:29--  ftp://gentoo.mirrors.pair.com/distfiles/rtg-0.7.4.tar.gz
           => `/usr/portage/distfiles/rtg-0.7.4.tar.gz'
Resolving gentoo.mirrors.pair.com... 216.92.2.140
Connecting to gentoo.mirrors.pair.com[216.92.2.140]:21... connected.
Logging in as anonymous ... Logged in!
==> SYST ... done.    ==> PWD ... done.
==> TYPE I ... done.  ==> CWD /distfiles ... done.
==> PASV ... done.    ==> RETR rtg-0.7.4.tar.gz ... done.
Length: 710,621 (unauthoritative)

100%[======================================================================================>] 710,621        9.31K/s    ETA 00:00

11:28:30 (11.57 KB/s) - `/usr/portage/distfiles/rtg-0.7.4.tar.gz' saved [710621]


!!! File is corrupt or incomplete. (Digests do not match)
>>> our recorded digest: c61ff1323701e2771bb5ff9cf67f1b77
>>>  your file's digest: 810c584caa6b944ff1752ce21f16a13e
!!! File does not exist: /usr/portage/distfiles//rtg-0.7.4.tar.gz



You're gonna tell me I'm screwed now huh?
Man I hope not, this was one of the the main reasons I had this server built (it will be used to monitor a datacenter).



0
 
LVL 1

Accepted Solution

by:
fyerk earned 125 total points
Comment Utility
Remove the distfile:
    >  rm /usr/portage/distfiles/rtg*

Fetch the file first:
    > emerge -f /usr/portage/net-analyzer/rtg/rtg-0.7.4.tar.gz

It might fail on one mirror and pick it up from sourceforge.

If you see this:
>>> rtg-0.7.4.tar.gz MD5 ;-)
>>> md5 src_uri ;-) rtg-0.7.4.tar.gz

You should be able to install it:
    > emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.tar.gz
0
 
LVL 1

Expert Comment

by:fyerk
Comment Utility
Oops, replace "tar.gz" in those pathnames with "ebuild"
0
 

Author Comment

by:cdukes
Comment Utility
Ok, I found one with a good MD5...

Downloading http://twtelecom.dl.sourceforge.net/sourceforge/rtg/rtg-0.7.4.tar.gz
--12:08:01--  http://twtelecom.dl.sourceforge.net/sourceforge/rtg/rtg-0.7.4.tar.gz
           => `/usr/portage/distfiles/rtg-0.7.4.tar.gz'
Resolving twtelecom.dl.sourceforge.net... 207.250.4.12
Connecting to twtelecom.dl.sourceforge.net[207.250.4.12]:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 710,621 [application/x-gzip]

100%[======================================================================================>] 710,621       37.82K/s    ETA 00:00

12:08:17 (43.00 KB/s) - `/usr/portage/distfiles/rtg-0.7.4.tar.gz' saved [710621/710621]

>>> rtg-0.7.4.tar.gz MD5 ;-)
>>> md5 src_uri ;-) rtg-0.7.4.tar.gz


But, I still get:

#emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.tar.gz
Calculating dependencies  
emerge: there are no masked or unmasked ebuilds to satisfy "/usr/portage/net-analyzer/rtg/rtg-0.7.4.tar.gz".

!!! Error calculating dependencies. Please correct.
# ACCEPT_KEYWORDS="~sparc" emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.tar.gz
Calculating dependencies  
emerge: there are no masked or unmasked ebuilds to satisfy "/usr/portage/net-analyzer/rtg/rtg-0.7.4.tar.gz".

!!! Error calculating dependencies. Please correct.
#


Next Step?
0
 

Author Comment

by:cdukes
Comment Utility
I got it! -- forgot to change the .gz ;-)


#emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild    
Calculating dependencies ...done!
>>> emerge (1 of 1) net-analyzer/rtg-0.7.4 to /
>>> md5 src_uri ;-) rtg-0.7.4.tar.gz
>>> Unpacking source...


Thank you, thank you and thank you!
0
 
LVL 1

Expert Comment

by:fyerk
Comment Utility
Replace "tar.gz" with ebuild
    > ACCEPT_KEYWORDS="~sparc" emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild
0

Featured Post

IT, Stop Being Called Into Every Meeting

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

rdate is a Linux command and the network time protocol for immediate date and time setup from another machine. The clocks are synchronized by entering rdate with the -s switch (command without switch just checks the time but does not set anything). …
Setting up Secure Ubuntu server on VMware 1.      Insert the Ubuntu Server distribution CD or attach the ISO of the CD which is in the “Datastore”. Note that it is important to install the x64 edition on servers, not the X86 editions. 2.      Power on th…
Get a first impression of how PRTG looks and learn how it works.   This video is a short introduction to PRTG, as an initial overview or as a quick start for new PRTG users.
This demo shows you how to set up the containerized NetScaler CPX with NetScaler Management and Analytics System in a non-routable Mesos/Marathon environment for use with Micro-Services applications.

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

10 Experts available now in Live!

Get 1:1 Help Now