Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Message from emerge somewhat esoteric to standard user.
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
augustin2
Apprentice
Apprentice


Joined: 16 Mar 2012
Posts: 244
Location: France

PostPosted: Fri May 03, 2013 10:09 am    Post subject: Message from emerge somewhat esoteric to standard user. Reply with quote

Hi,

I am a basic user of Gentoo. I mean I am not a developer and, despite some technical background, I may encounter problems in understanding some message that are given by emerge.
Of course, there is the documentation that is pretty good that help understanding a lot of thing but there are some topics that are not easy to localize.

My current problem is with use flags.
Sometime emerge gives directions like this :

Quote:

The following USE changes are necessary to proceed:
(see "package.use" in the portage(5) man page for more details)
# required by kde-base/pykde4-4.10.1
# required by kde-base/lokalize-4.10.1
# required by lokalize (argument)
=dev-python/PyQt4-4.9.6-r2 webkit declarative sql script

* IMPORTANT: 8 news items need reading for repository 'gentoo'.
* Use eselect news to read news items.

This is rather clear and I (me the basic user) understand that I should add =dev-python/PyQt4-4.9.6-r2 webkit declarative sql script in /etc/portage/package.use.

In other cases, the message is more complex like this one :
Quote:

!!! The ebuild selected to satisfy "dev-lang/php" has unmet requirements.
- dev-lang/php-5.4.13::gentoo USE="berkdb bzip2 cli crypt ctype exif fileinfo filter gdbm hash iconv ipv6 json ldap nls phar posix readline session simplexml spell ssl tokenizer truetype unicode xml zlib -apache2 -bcmath -calendar -cdb -cgi -cjk -curl -curlwrappers -debug -doc -embed -enchant -firebird -flatfile -fpm (-frontbase) -ftp -gd -gmp -imap -inifile -intl -iodbc -kerberos -ldap-sasl -libedit -mhash -mssql -mysql -mysqli -mysqlnd -oci8-instant-client -odbc -pcntl -pdo -postgres -qdbm -recode (-selinux) -sharedmem -snmp -soap -sockets -sqlite (-sybase-ct) -sysvipc -threads -tidy -wddx -xmlreader -xmlrpc -xmlwriter -xpm -xsl -zip"

The following REQUIRED_USE flag constraints are unsatisfied:
truetype? ( gd ) exif? ( gd )

The above constraints are a subset of the following complete expression:
truetype? ( gd ) cjk? ( gd ) exif? ( gd ) xpm? ( gd ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) wddx? ( xml ) xmlrpc? ( any-of ( xml iconv ) ) xmlreader? ( xml ) xsl? ( xml ) ldap-sasl? ( ldap ) mhash? ( hash ) phar? ( hash ) mysqlnd? ( any-of ( mysql mysqli pdo ) ) qdbm? ( !gdbm ) readline? ( !libedit ) recode? ( !imap !mysql !mysqli ) sharedmem? ( !threads ) !cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )

(dependency required by "dev-php/PEAR-PHP_Beautifier-0.1.15" [ebuild])
(dependency required by "PEAR-PHP_Beautifier" [argument])

This is probably very clear to a developer that has learned this strange language. To me (the basic user) is not very readable. What is the meaning of the ? mark after a flag and the meaning of the parenthesis and square brakets ?
How to understand this mysterious language and know what to add in /etc/portage/package.use ?
If somebody could teach me a bit or point me to the appropriate page in the documentation, I would be very happy :
Back to top
View user's profile Send private message
musv
Advocate
Advocate


Joined: 01 Dec 2002
Posts: 3333
Location: de

PostPosted: Fri May 03, 2013 10:31 am    Post subject: Re: Message from emerge somewhat esoteric to standard user. Reply with quote

augustin2 wrote:
In other cases, the message is more complex like this one :
Quote:

!!! The ebuild selected to satisfy "dev-lang/php" has unmet requirements.
- dev-lang/php-5.4.13::gentoo USE="berkdb bzip2 cli crypt ctype exif fileinfo filter gdbm hash iconv ipv6 json ldap nls phar posix readline session simplexml spell ssl tokenizer truetype unicode xml zlib -apache2 -bcmath -calendar -cdb -cgi -cjk -curl -curlwrappers -debug -doc -embed -enchant -firebird -flatfile -fpm (-frontbase) -ftp -gd -gmp -imap -inifile -intl -iodbc -kerberos -ldap-sasl -libedit -mhash -mssql -mysql -mysqli -mysqlnd -oci8-instant-client -odbc -pcntl -pdo -postgres -qdbm -recode (-selinux) -sharedmem -snmp -soap -sockets -sqlite (-sybase-ct) -sysvipc -threads -tidy -wddx -xmlreader -xmlrpc -xmlwriter -xpm -xsl -zip"

The following REQUIRED_USE flag constraints are unsatisfied:
truetype? ( gd ) exif? ( gd )

No, it's not as difficult as you think.

The last line tells you, that you have set the optional USE-Flags: truetype and exif. And if you have set those flags, you have to activate gd too. That's all.
Back to top
View user's profile Send private message
augustin2
Apprentice
Apprentice


Joined: 16 Mar 2012
Posts: 244
Location: France

PostPosted: Fri May 03, 2013 10:52 am    Post subject: Reply with quote

Thank you for your fast answer. I made a step. Fine.

But I still feel perplex in front of this very long list ? What is this complete expression for ?

Quote:

The above constraints are a subset of the following complete expression:
truetype? ( gd ) cjk? ( gd ) exif? ( gd ) xpm? ( gd ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) wddx? ( xml ) xmlrpc? ( any-of ( xml iconv ) ) xmlreader? ( xml ) xsl? ( xml ) ldap-sasl? ( ldap ) mhash? ( hash ) phar? ( hash ) mysqlnd? ( any-of ( mysql mysqli pdo ) ) qdbm? ( !gdbm ) readline? ( !libedit ) recode? ( !imap !mysql !mysqli ) sharedmem? ( !threads ) !cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )

Why only truetype and exif have been selected (isolated) ?

and what about this two final lines ? Particularly with the elements in square brakets [ebuild] [argument]
Quote:

(dependency required by "dev-php/PEAR-PHP_Beautifier-0.1.15" [ebuild])
(dependency required by "PEAR-PHP_Beautifier" [argument])

What exactly should I write in /etc/portage/package.use ? I added
Quote:
=dev-php/PEAR-PHP_Beautifier-0.1.15 gd
and it changed nothing !

Where can I learn more to feel completely at ease ?
Back to top
View user's profile Send private message
musv
Advocate
Advocate


Joined: 01 Dec 2002
Posts: 3333
Location: de

PostPosted: Fri May 03, 2013 11:47 am    Post subject: Reply with quote

augustin2 wrote:

Code:

The above constraints are a subset of the following complete expression:
truetype? ( gd ) cjk? ( gd ) exif? ( gd ) xpm? ( gd ) gd? ( zlib ) simplexml? ( xml ) soap? ( xml ) wddx? ( xml ) xmlrpc? ( any-of ( xml iconv ) ) xmlreader? ( xml ) xsl? ( xml ) ldap-sasl? ( ldap ) mhash? ( hash ) phar? ( hash ) mysqlnd? ( any-of ( mysql mysqli pdo ) ) qdbm? ( !gdbm ) readline? ( !libedit ) recode? ( !imap !mysql !mysqli ) sharedmem? ( !threads ) !cli? ( !cgi? ( !fpm? ( !apache2? ( !embed? ( cli ) ) ) ) )

Why only truetype and exif have been selected (isolated) ?


Because of the whole list you have only selected truetype and exif in your current USE-Flags, which don't match the requirements.
  • cjk, xpm, wddx, ... are not set, so there's no need the check.
  • simplexml is set, but xml is already set too. So there's also nothing to do.
  • xmlrpc? ( any-of ( xml iconv ) ) means, you need at least one of xml or iconv


augustin2 wrote:
Code:
(dependency required by "dev-php/PEAR-PHP_Beautifier-0.1.15" [ebuild])
(dependency required by "PEAR-PHP_Beautifier" [argument])

means, PEAR-PHP_Beautifier-0.1.15 is the ebuild, which requires PHP built with the certain flags. If you deinstall PEAR-PHP_Beautifier, you wouldn't have to modify those PHP related flags.

augustin2 wrote:
What exactly should I write in /etc/portage/package.use ?

The unsatisfied constraints from above:
Code:

!!! The ebuild selected to satisfy "dev-lang/php" has unmet requirements.
- dev-lang/php-5.4.13::gentoo USE="..."

The following REQUIRED_USE flag constraints are unsatisfied:
truetype? ( gd ) exif? ( gd )

So, the problematic package isn't PEAR-PHP_Beautifier-0.1.15, but PHP.

/etc/portage/package.use/something.use:

dev-lang/php gd

augustin2 wrote:
Where can I learn more to feel completely at ease ?

Back to top
View user's profile Send private message
augustin2
Apprentice
Apprentice


Joined: 16 Mar 2012
Posts: 244
Location: France

PostPosted: Fri May 03, 2013 12:04 pm    Post subject: Reply with quote

Thank you very much musv.
Light is coming undoubtedly !
Back to top
View user's profile Send private message
phajdan.jr
Retired Dev
Retired Dev


Joined: 23 Mar 2006
Posts: 1777
Location: Poland

PostPosted: Fri May 03, 2013 5:12 pm    Post subject: Reply with quote

I'd actually recommend to set the gd flag globally (in make.conf). Package-specific USE flags can give you lots of trouble in the long run.

You can read more about REQUIRED_USE at http://devmanual.gentoo.org/ebuild-writing/eapi/#variables
_________________
http://phajdan-jr.blogspot.com/
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
Page 1 of 1

 
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