View previous topic :: View next topic |
Author |
Message |
te36 n00b
Joined: 24 Dec 2013 Posts: 17
|
Posted: Thu Nov 21, 2024 1:19 pm Post subject: Use flag in parenthesis (-gd) - why, how to troubleshoot |
|
|
I am trying to get dev-perl/Template-Toolkit emerged with 'gd' use flag set:
Code: | [ebuild N ] dev-perl/Template-Toolkit-3.102.0::gentoo USE="xml (-gd) -latex -mysql -postgres -test -vim-syntax" PERL_FEATURES="(-debug) -ithreads -quadmath" 511 KiB |
Even when i explicitly include "gd" into the package.use file or even USE="... gd" in make.conf!!
--
https://wiki.gentoo.org/wiki/USE_flag :
Check which USE flags are enabled for a single package, without calculating all of its dependencies:
emerge --nodeps --pretend dev-perl/Template-Toolkit
Code: | [ebuild N ] dev-perl/Template-Toolkit-3.102.0 USE="xml (-gd) -latex -mysql -postgres -test -vim-syntax" PERL_FEATURES="(-debug) -ithreads -quadmath" |
Does this mean i should be able to find a reason for (-gd) in the package ebuild ? I can not.
What evil magic is happening here in the depth of portage, and why can i not find any documenation for it, for example in aforementioned wiki page ??
More importantly though: what can i do to fix this ?
[Administrator edit: added [code] tags to preserve output layout. -Hu] |
|
Back to top |
|
|
grknight Retired Dev
Joined: 20 Feb 2015 Posts: 1927
|
Posted: Thu Nov 21, 2024 1:28 pm Post subject: |
|
|
profiles/base/package.use.stable.mask: Code: | # Kent Fredric <kentnl@gentoo.org> (2019-07-30)
# These features require dev-perl/GD, which currently can't be
# considered stable due to serious defects upstream. Bug #661634
app-misc/g15daemon perl
dev-lang/php coverage
dev-perl/Business-ISBN barcode
dev-perl/Template-Toolkit gd
media-fonts/unifont utils fontforge
media-video/vdrsync dvdr |
Looks like old references that were not cleaned up after (re)stable of dev-perl/GD. Suggest filing a bug if one does not yet exist.
In the mean time, placing dev-perl/Template-Toolkit in package.accept_keywords will allow the gd flag to become available. |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3735 Location: Rasi, Finland
|
Posted: Thu Nov 21, 2024 1:30 pm Post subject: Re: Use flag in parenthesis (-gd) - why, how to troubleshoot |
|
|
te36 wrote: | What evil magic is happening here in the depth of portage, and why can i not find any documenation for it, for example in aforementioned wiki page ?? | It's the man pages that will reveal the secrets of the evil magic: man emerge: | --verbose [ y | n ], -v
Tell emerge to run in verbose mode. Currently this flag
causes emerge to print out GNU info errors, if any, and to
show the USE flags that will be used for each package when
pretending. The following symbols are affixed to USE flags in
order to indicate their status:
Symbol Location Meaning
──────────────────────────────────────────────────────────────
- prefix not enabled (either disabled or removed)
* suffix transition to or from the enabled state
% suffix newly added or removed
() circumfix forced, masked, or removed
{} circumfix state is bound to FEATURES settings | So either that USE-flag is removed or forced to be off. This forcing may come from your selected profile. The reason for forcing is usually because the such feature that the particular USE-flag provides cannot be enabled in the selected profile (or architecture). If it was enabled it may cause build error or simply not have any benefits on the currently selected profile (or architecture).
EDIT: As stated above, also accepted keyword may affect which use flags are forced on or off. _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
Last edited by Zucca on Thu Nov 21, 2024 1:35 pm; edited 1 time in total |
|
Back to top |
|
|
te36 n00b
Joined: 24 Dec 2013 Posts: 17
|
Posted: Thu Nov 21, 2024 1:31 pm Post subject: |
|
|
Thanks so much. Bonus question: If i wanted to improve the wiki so muggles like myself would be able to figure this out by themselves... what should it say?? would one need to know to look at that file or is there any tool giving an indicator that thisis the reason ? |
|
Back to top |
|
|
te36 n00b
Joined: 24 Dec 2013 Posts: 17
|
Posted: Thu Nov 21, 2024 2:06 pm Post subject: |
|
|
@Zucca Thanks for the pointer to the doc and explanation, The man page IMHO is broken too, because the output shown does occur with or without the --verbose option enabled on the CLI. Oh well.
I've tried to summarize the feedback provided here to
https://wiki.gentoo.org/wiki/USE_flag
USE flags in () parenthesis are forced, masked or removed. This forcing may come from the selected profile or architecture. To understand why, you may need to analyse the profile file, such as "profiles/base/package.use.stable.mask". If you think the masking in the profile is in error, you may try to unmask it by adding the package (with no flags) to the "package.accept_keywords" file. If the masking was not in error, you will likely end up with either a broken build or no change at all (because the USE flag was not functional).
Hope this is useful.
Will try to emerge what i came here for (logitechmediaserver ultimately), and if i don't run into isues, i'll try to figure out how to search/open a bug against the masking. |
|
Back to top |
|
|
Zucca Moderator
Joined: 14 Jun 2007 Posts: 3735 Location: Rasi, Finland
|
Posted: Thu Nov 21, 2024 2:08 pm Post subject: |
|
|
Thank you very much for your contribution to the wiki. :) _________________ ..: Zucca :..
My gentoo installs: | init=/sbin/openrc-init
-systemd -logind -elogind seatd |
Quote: | I am NaN! I am a man! |
|
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 22716
|
Posted: Thu Nov 21, 2024 2:48 pm Post subject: |
|
|
Accepting unstable keywords only changes the behavior if the USE flag was masked via the use.stable.mask type mask. If it is blocked via use.mask, then accepting unstable keywords will have no effect on the mask. For example: Code: | # ACCEPT_KEYWORDS=~amd64 USE=doc emerge -pvO repolite
These are the packages that would be merged, in order:
[ebuild N ] dev-util/repolite-0.6.2-r1::gentoo USE="(-doc)" PYTHON_TARGETS="python3_12 -python3_10 -python3_11" 58 KiB | This package's USE=doc is masked in profiles/base/package.use.mask with the note: Code: | # Joonas Niilola <juippis@gentoo.org> (2024-11-07)
# Dependency for generating docs not packaged in Gentoo. #942992
dev-util/repolite doc | Compare to the success you got, where accepting unstable had an effect: Code: | # ACCEPT_KEYWORDS='amd64 -~amd64' USE=gd emerge -pvO Template-Toolkit
These are the packages that would be merged, in order:
[ebuild N ] dev-perl/Template-Toolkit-3.102.0::gentoo USE="(-gd) -latex -mysql -postgres -test -vim-syntax -xml" PERL_FEATURES="(-debug) -ithreads -quadmath" 511 KiB
Total: 1 package (1 new), Size of downloads: 511 KiB
# ACCEPT_KEYWORDS='amd64 ~amd64' USE=gd emerge -pvO Template-Toolkit
These are the packages that would be merged, in order:
[ebuild N ] dev-perl/Template-Toolkit-3.102.0::gentoo USE="gd -latex -mysql -postgres -test -vim-syntax -xml" PERL_FEATURES="(-debug) -ithreads -quadmath" 511 KiB
Total: 1 package (1 new), Size of downloads: 511 KiB
|
|
|
Back to top |
|
|
te36 n00b
Joined: 24 Dec 2013 Posts: 17
|
Posted: Sun Nov 24, 2024 4:17 am Post subject: |
|
|
@Hu sorry, but i am not sure i can parse correctly what you are trying to say. Can you rephrase ? |
|
Back to top |
|
|
te36 n00b
Joined: 24 Dec 2013 Posts: 17
|
|
Back to top |
|
|
Hu Administrator
Joined: 06 Mar 2007 Posts: 22716
|
Posted: Sun Nov 24, 2024 2:59 pm Post subject: |
|
|
Your addition to the Wiki, though well meaning, was incorrect. In some cases, adding the package to accept_keywords will override this use mask. As I read what you put on the Wiki, you are saying that in all cases, adding the package to accept_keywods will override the use mask. That is overly broad, and therefore readers in certain situations may try your advice and find that it does not work. I provided a demonstration of a package (repolite) where your instructions do not override the mask. |
|
Back to top |
|
|
|