Learn how to a build a cloud-first strategyRegister Now

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 10397
  • Last Modified:

Gentoo Emerge error "Specific key requires an operator"

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
cdukes
Asked:
cdukes
  • 6
  • 5
1 Solution
 
fyerkCommented:
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
 
cdukesAuthor Commented:
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
 
fyerkCommented:
Try emerging the ebuild file directly

emerge -pv /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
cdukesAuthor Commented:
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
 
fyerkCommented:
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
 
cdukesAuthor Commented:
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
 
fyerkCommented:
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
 
fyerkCommented:
Oops, replace "tar.gz" in those pathnames with "ebuild"
0
 
cdukesAuthor Commented:
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
 
cdukesAuthor Commented:
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
 
fyerkCommented:
Replace "tar.gz" with ebuild
    > ACCEPT_KEYWORDS="~sparc" emerge /usr/portage/net-analyzer/rtg/rtg-0.7.4.ebuild
0

Featured Post

Prep for the ITIL® Foundation Certification Exam

December’s Course of the Month is now available! Enroll to learn ITIL® Foundation best practices for delivering IT services effectively and efficiently.

  • 6
  • 5
Tackle projects and never again get stuck behind a technical roadblock.
Join Now