Building kc master: ./.libs/libmapi.so: undefined reference to `KC::ECLocale::
-
My entry looks different:
ncurses libs : -lncursesw
If I manually add
-ltinfo
toNCURSES_LIBS =
in Makefile, it builds. -
What does the following commands give you?
11:02:47 bo@bo-suse ~/src/kopanocore (master) > ncursesw5-config --libs -lncursesw -ltinfo 11:02:50 bo@bo-suse ~/src/kopanocore (master) > ncursesw6-config --libs -L/usr/lib64/ncurses6 -lncursesw -ltinfo
Assume not the same as mine?
Bo
-
Yes, just
-lncursesw
[tadao@ando kopanocore]# ncursesw5-config --libs -lncursesw [tadao@ando kopanocore]# ncursesw6-config --libs -bash: ncursesw6-config: Kommando nicht gefunden.
“Kommando nicht gefunden” ~ command not found ;-)
-
@umgfoin said in Building kc master: ./.libs/libmapi.so: undefined reference to `KC::ECLocale:::
Yes, just
-lncursesw
[tadao@ando kopanocore]# ncursesw5-config --libs -lncursesw [tadao@ando kopanocore]# ncursesw6-config --libs -bash: ncursesw6-config: Kommando nicht gefunden.
“Kommando nicht gefunden” ~ command not found ;-)
Yeah that’s the problem. But it used to work?
Bo
-
@bosim
Yes, used to work 2 days ago.My findings:
libncurses links against libltinfo. If we don’t/ can’t explicitely specify this dependancy, newer toolchains can be called with ld-flag--copy-dt-needed-entries
. As stated here, implicitely satisfying deep-link dependencies is no longer default behaviour for ld. The above flag forces this behaviour.With option
LDFLAGS = -Xlinker --copy-dt-needed-entries
in Makefile, the dependency is correctly resolved, again.
Atleast valid forgcc version 6.2.1 20160916 (Red Hat 6.2.1-3) (GCC)
++umgfoin. -
@umgfoin said in Building kc master: ./.libs/libmapi.so: undefined reference to `KC::ECLocale:::
Yes, used to work 2 days ago.
I looked for commits related to configure.ac, but couldn’t find anything that changed that. Did you get any updates from your distribution?
Bo
-
@bosim said:
Did you get any updates from your distribution?
Nothing obvious - since 14.03.:
MariaDB-xxx,
php71,
perl-XML-LibXML,
perl-Test-Harness -
@umgfoin said in Building kc master: ./.libs/libmapi.so: undefined reference to `KC::ECLocale:::
@bosim said:
Did you get any updates from your distribution?
Nothing obvious - since 14.03.:
MariaDB-xxx,
php71,
perl-XML-LibXML,
perl-Test-HarnessThat’s wierd, I will create a JIRA ticket to investigate.
https://jira.kopano.io/browse/KC-600 -
long ago but for reference: fixed upstream. https://bugs.centos.org/view.php?id=6668
-
Hi @mkromer ,
thanks - read that, too, but though differently stated in the rel-notes of ncurses-5.7-4.20090207.el6, we still get:[hias@wurzler kopano-core]# ncurses5-config --libs -lncurses [hias@wurzler kopano-core]# ncursesw5-config --libs -lncursesw [hias@wurzler kopano-core]# pkg-config ncurses --libs -lncurses [hias@wurzler kopano-core]# ncurses5-config --version 5.7.20090207
A working fix is switching to ncurses-header instead of curses.h in configure.ac:
AC_CHECK_HEADERS([ncurses.h])
versus
AC_CHECK_HEADERS([curses.h])
++umgfoin.