Emerge says that --pg option is incompatible with --fomit-frame-pointer option. Reproducible: Always Steps to Reproduce: 1. emerge ncurses with --fomit-frame-pointer cflag 2. 3.
Um...5.6-r2 of what package? Might be some useful info to have.
(In reply to comment #1) > Um...5.6-r2 of what package? Might be some useful info to have. > ncurses, sorry, I must have cut it accidentally.
Please, post some errors, emerge --info and emerge -pv ncurses output.
These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] sys-libs/ncurses-5.6-r2 USE="gpm profile unicode -bootstrap -build -debug -doc -minimal -nocxx -trace" 0 kB ---------------------- i686-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I../ncurses -I/var/tmp/portage/sys-libs/ncurses-5.6-r2/work/ncurses-5.6/ncurses -I/var/tmp/portage/sys-libs/ncurses-5.6-r2/work/ncurses-5.6/ncurses/../include -I. -I../include -D_GNU_SOURCE -DXTSTRINGDEFINES -DNDEBUG -O2 -march=prescott -pipe -fomit-frame-pointer -W -Wall -Wbad-function-cast -Wcast-align -Wcast-qual -Winline -Wmissing-declarations -Wmissing-prototypes -Wnested-externs -Wpointer-arith -Wshadow -Wstrict-prototypes -Wundef -Wwrite-strings -pg -c /var/tmp/portage/sys-libs/ncurses-5.6-r2/work/ncurses-5.6/ncurses/tty/hashmap.c -o ../obj_p/hashmap.o i686-pc-linux-gnu-gcc: -pg and -fomit-frame-pointer are incompatible make[1]: *** [../obj_p/hardscroll.o] Error 1 make[1]: *** Waiting for unfinished jobs.... i686-pc-linux-gnu-gcc: -pg and -fomit-frame-pointer are incompatible make[1]: *** [../obj_p/hashmap.o] Error 1 make[1]: Leaving directory `/var/tmp/portage/sys-libs/ncurses-5.6-r2/work/narrowc/ncurses' make: *** [all] Error 2 * * ERROR: sys-libs/ncurses-5.6-r2 failed. * Call stack: * ebuild.sh, line 1647: Called dyn_compile * ebuild.sh, line 988: Called qa_call 'src_compile' * ebuild.sh, line 44: Called src_compile * ncurses-5.6-r2.ebuild, line 49: Called do_compile * ncurses-5.6-r2.ebuild, line 102: Called die * * make failed * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/tmp/portage/sys-libs/ncurses-5.6-r2/temp/build.log'. *
Created attachment 124348 [details] emerge --info
And reopen this bug. I can confirm it.
Reopen.
error looks pretty self explanatory to me: i686-pc-linux-gnu-gcc: -pg and -fomit-frame-pointer are incompatible you honestly cannot expect USE=profile to work when you have -fomit-frame-pointer in your CFLAGS
Does USE="profile" only adds -pg?
*** Bug 185065 has been marked as a duplicate of this bug. ***
*** Bug 185861 has been marked as a duplicate of this bug. ***
*** Bug 186963 has been marked as a duplicate of this bug. ***
*** Bug 189894 has been marked as a duplicate of this bug. ***
Created attachment 128975 [details, diff] filter -fomit-frame-pointer I have no clue what USE=profile or -pg mean but filtering out -fomit-frame-pointer fixed the problem for me.
Created attachment 128977 [details, diff] filter -fomit-frame-pointer I have no clue what USE=profile or -pg mean but filtering out -fomit-frame-pointer fixed the problem for me.
if you have no clue what USE=profile is, then why exactly did you put it into your make.conf
(In reply to comment #16) > if you have no clue what USE=profile is, then why exactly did you put it into > your make.conf > Because I thought it had something to do with Gentoo's profiles, not program profiling (a number of USE flag descriptions are inadequate).
it's easy to complain something sucks, why dont you try suggesting something that is clearer
(In reply to comment #18) > it's easy to complain something sucks, why dont you try suggesting something > that is clearer > Thanks for reminding me to turn my annoyance into something productive. #190431.
*** Bug 195134 has been marked as a duplicate of this bug. ***
*** Bug 196203 has been marked as a duplicate of this bug. ***
*** Bug 203700 has been marked as a duplicate of this bug. ***
(In reply to comment #19) > (In reply to comment #18) > > it's easy to complain something sucks, why dont you try suggesting something > > that is clearer > > > > Thanks for reminding me to turn my annoyance into something productive. > #190431. > Mmm, and made me realize since I'm doing very little profiling, I can remove the use flag. Interesting to note that glibc with profile still compiles without frame pointers. I guess it's actually not using the profiling option in the compiler.
glibc is special ... it builds a different set of libraries used only for profiling
*** Bug 204936 has been marked as a duplicate of this bug. ***
In Bug 204936 the message from gcc is hidden in the configure log, and this is not a user-friendly behavior. If you know that these flags are incompatible, why not just 'filter-flags' one of them?
having USE=profile and CFLAGS=-fomit-frame-pointer makes no sense. the fact that ncurses dies while others do not is largely irrelevant ... the combination makes no sense for any package.
Can we please just use profile && filter-flag -fomit-frame-pointer then? Perhaps that isn't the best long term solution, but it would at least solve the immediate problem.
it wouldnt solve anything. it'd allow people to continue on using wrong combinations and thinking it's ok.
Why bother having filter-flags at all then? If we cared about teaching people how to maintain their system, then this function would be useless. Since portage doesn't easily allow custom cflags on a per-package basis, and it certainly doesn't do this out of the box, we *NEED* to sanitize the environment for the user! Please apply Keyword: QAbaddie
There are lots of stupid combinations of CFLAGS. We don't step in when a user sets USE=debug and compiles with crazy optimizations that make debug info useless. This is something that documenting the USE flag better would resolve, and there are already several bugs open about that. Searching bugzilla quick will turn up those bugs.
(In reply to comment #30) > Why bother having filter-flags at all then? If we cared about teaching people > how to maintain their system, then this function would be useless. Personally, one of the reasons I like to run Gentoo is because I like to be edgy. So being kicked out to do some research, to me is a good thing. But that doesn't mean I'm a guru, or I can program like a cool person. Filter flags is a good way to remove build-breaking options being done, so I can still run my website while I've broken something. (In reply to comment #31) >We don't step in when a user sets USE=debug and compiles with crazy > optimizations that make debug info useless. Right. Personally, for an end-user, I would keep leaving out frame pointers, and remove profile. Bt that's just me.
*** Bug 205719 has been marked as a duplicate of this bug. ***
*** Bug 210170 has been marked as a duplicate of this bug. ***
Sorry for the duplicate bug filing, I don't know why this one didn't show up when I searched on "ncurses" before filing 210170. If it had I would have added my report here. I would agree on the previous comments about the inadequacy of the current USE flag documentation. This has been something I've felt for a long time, but in the past when I suggested that better docs were needed, and volunteered to try and help, I got shot down on the basis of "how much help do you need?" - or as it felt "screw you if you ain't l33t!" At any rate, I did find that another work-around is to add -profile to an ncurses entry in /etc/portage/package.use - it solved the problem this time, though I may now go back and take the profile flag out of my make.conf. ART / Gooserider
*** Bug 223719 has been marked as a duplicate of this bug. ***
*** Bug 238456 has been marked as a duplicate of this bug. ***
*** Bug 285473 has been marked as a duplicate of this bug. ***
*** Bug 285268 has been marked as a duplicate of this bug. ***
Please tell mi what is going on. This bug is opened since 2007.07. It's more than 2 years! Situations like this is shame. You are quarreling "user should think" or "user schould has *working* system". Yes, root-user always should think, but when user can't upgrade package hi is irritated. Not every one is programer and knows -fomit-frame-pointer can't be used with "profile". The main goal is *working system*. I saw two propositions in this bug: - do nothing - filter flag (there is many ebuilds filtering -fomit..) My proposal is einfo "you can't have both USE="profile" and CFLAGS="-fomit-frame-pointer"" Please, choose second option, third, ninth, but choose something, and let ncurses compile cleanly or let user know why hi/she can not compile this package.
*** Bug 294122 has been marked as a duplicate of this bug. ***
*** Bug 300470 has been marked as a duplicate of this bug. ***