llvm-config curses-related failures

Hello,

I’m trying to build some code that relies on LLVM as a library (out-of-source). It uses llvm-config for the compilation & linkage flags. Some recent change breaks it, and with the newest trunk LLVM I get:

/home/eliben/llvm/build_llvm_svn_rw/Debug+Asserts/lib/libLLVMSupport.a(Process.o): In function terminalHasColors': /home/eliben/llvm/llvm_svn_rw/lib/Support/Unix/Process.inc:256: undefined reference to setupterm’
/home/eliben/llvm/llvm_svn_rw/lib/Support/Unix/Process.inc:274: undefined reference to tigetnum' /home/eliben/llvm/llvm_svn_rw/lib/Support/Unix/Process.inc:278: undefined reference to set_curterm’
/home/eliben/llvm/llvm_svn_rw/lib/Support/Unix/Process.inc:279: undefined reference to `del_curterm’
collect2: ld returned 1 exit status

This seems to be related to llvm-config not passing -ltinfo in its --ldflags. This bug also seems to be related: http://llvm.org/bugs/show_bug.cgi?id=16902

Is there a workaround for this?

Eli

Hi Eli

I don’t know a workaround which will keep support for coloured terminal output, but if you can live without it then passing these to configure should work.

–enable-curses=no
–enable-terminfo=no

Thanks,
Pete

Thanks for the suggestion, Pete. Another thing that works is pass -ltinfo
manually instead of using llvm-config. I just want to figure out why
llvm-config doesn't "get" that curses was found. I'll try to do some more
diagnosis and add information to the open bug.

Eli

Hi Eli

I don’t know a workaround which will keep support for coloured terminal
output, but if you can live without it then passing these to configure
should work.

--enable-curses=no
--enable-terminfo=no

Re-doing the configure & build in a new directory solved the problem for
me. I think the problem had to do with the fact that my previous svn update
on this machine was before Chandler's curses-related changes, and I then
ran 'make update' which used the old configure script. I've updated the PR
- maybe the OP had the same problem.

FWIW, Pete, the --enable-curses option to configure no longer exists.
configure just ignores it. Chandler removed it in r188160.

Eli

Ah, didn’t notice that commit. Thanks for the info.

Pete

Hi all,

I would like to kindly remind the Gentoo users that the tinfo use should be enabled for package sys-libs/ncurses

Regards.