Details
-
Bug
-
Resolution: Unresolved
-
P2: Important
-
None
-
4.8.6, 5.5.1, 5.7.1
-
None
-
Operating system : Lilblue Linux (a hardened uclibc Gentoo Linux derivative and subproject)
Processor architecture : AMD64
The attached emerge-info.txt has more details, but is a bit dated.
Description
Qt fails at configure phase because none of the three iconv implementation succeed.
First, there is the POSIX iconv test, which fails with:
iconv.o: In function `main': iconv.cpp:(.text.startup.main+0x32): undefined reference to `libiconv_open' iconv.cpp:(.text.startup.main+0x4d): undefined reference to `libiconv' iconv.cpp:(.text.startup.main+0x55): undefined reference to `libiconv_close'
Then, the SUN iconv test, failing with:
../gnu-libiconv/gnu-libiconv.cpp: In function 'int main(int, char**)': ../gnu-libiconv/gnu-libiconv.cpp:46:46: error: invalid conversion from 'const char**' to 'char**' [-fpermissive] iconv(x, &inp, &inbytes, &outp, &outbytes); ^
Finally the GNU iconv test:
gnu-libiconv.cpp: In function 'int main(int, char**)': gnu-libiconv.cpp:46:46: error: invalid conversion from 'const char**' to 'char**' [-fpermissive] iconv(x, &inp, &inbytes, &outp, &outbytes);
The attached patch corrects the problem by allowing the GNU libiconv test to succeed on uclibc. It has been used successfully on versions 4.8.6, 5.5.1, 5.6.x and 5.7.1. For Qt5, it also needs to be applied to qtdbus, qtgui, qtnetwork, qtprintsupport, qtwidgets and qtxml modules.
See also https://bugs.gentoo.org/show_bug.cgi?id=587062 and https://bugs.gentoo.org/show_bug.cgi?id=549664