On Saturday, April 11, 2015 10:22:09 AM Alan Grimes wrote:
> My machine is so completely broken right now I can't open any new
> terminal sessions.
> 
> This is because I stupidly tried to toggle tinfo useflag in a desperate
> attempt to get everything in my portage tree working again.
> 
> Why now did nothing in my portage tree build?
> 
> It wasn't building for two reasons:
> 
> 1. My machine is not correctly configured to build 32 bit executables,
> mainly because I cannot find a 32 bit version of ncurses that ld is
> willing to acknowledge the existence of.
> 
> 2. LD cannot find ncurses, -- It simply can't, in 64 bit mode either.
> That is the only error message it ever gives and vast amount of effort
> spent in sessions over the last year and a half have failed to find any
> solution. I only installed Gentoo on this machine four and a half years
> ago so it's hard to imagine what could have gotten this royally foobar
> in such a short period.
> 
> 
> I am an enthuseastic supporter of multilib, I even tried to set it up
> myself but failed due, once again, to ncurses.
> 
> I was running my system as usual, running updates every week or two, no
> major issues since the libav clusterfuck a few months ago. (Libav is a
> cult not a software project). The ncurses problem has been a low-level
> issue for a long time but, with tinfo set, 99% of packages worked.
> 
> And then portage did two things.
> 
> 1. It masked emul-linux -- A move that I support, it's time to see that go.
> 
> 2. It sent out a profile that sets variable ABI_x86 with 32 bit enabled.
> ALARM: ABI_x86 should be set in exactly one place:
> /etc/portage/make.conf and nowhere else. But, nevertheless, ABI_x86 WAS
> set which broke the profile because my system cannot compile 32 bit
> executables. =( I tried the no-multilib profile but it didn't have a
> number of essential useflags and was foobar.
> 
> 
> Right now my system is completely unusable and will need fresh stage3
> packages followed by an emerge emptytree to recover. But before I can do
> that, I need a sane profile and to know that the person who pushed out
> the changes to portage, obviously without any testing whatsoever, that
> broke my system so comprehensively is tortured, executed, butchered, and
> then cremated.

This is probably what happened:

1. You have ncurses and emul-linux libraries installed. Everything's good.
2. You come up with this genius idea: LDFLAGS="-lncurses "
3. You uninstalled emul-linux (including 32-bit ncurses). Now you need to 
rebuild ncurses BUT YOU'RE LINKING IT AGAINST ITSELF. This fails because you 
don't have 32-bit ncurses (may fail even if you did, not sure).
4. Since you're linking everything against ncurses everything 32-bit fails.

Duh! You could've probably fixed it by just removing that LDFLAGS line and 
rebuilding ncurses.

-- 
Fernando Rodriguez

Reply via email to