QT 5.5.1 compile still uses system ICU despite pkg-config setting
-
I cannot upgrade to newer than 5.5.1 release yet because of webkit deprecation.
Compiling QT 5.5.1 to use locally compiled and installed (at ~/icudir/) ICU libraries on Linux x86_64.
After compilingldd Qt5Core.so.5.5.1
still shows system ICU, not the one at ~/icudir/.Configure ->
PKG_CONFIG_PATH=~/icudir/lib/pkgconfig:$(PKG_CONFIG_PATH) ./configure -release -opensource -confirm-license -nomake-tests -nomake examples -platform -prefix ~/myqt/
Make ->
PKG_CONFIG_PATH=~/icudir/lib/pkgconfig LD_LIBRARY_PATH="~/icudir/lib" CXXFLAGS="-fPIC -I~/icudir/include/" LDFLAGS="-L~/icudir/lib -licui18n -licuuc -licudata" make -j 8
Any ideas are appreciated!
-
Figured the problem.
If you call configure script with "-icu" option then pkg-config isn't taking effect. This is counter-intuitive.
Also "LD_LIBRARY_PATH=<icudir>" is required during make because what seems to be a bug in some webkit subdirectory which doesnt respect PKG_CONFIG_PATH.Once "-no-icu", PKG_CONFIG_PATH in configure script and PKG_CONFIG_PATH, LD_LIBRARY_PATH in make are specified it works fine.
-
If you change
icu_dependency.pri
file to include the following for a given platform then it compiles as expected.INCLUDEPATH += <icudir>/include LIBS += -L<icudir>/lib
But I believe that its unclean and there should be a better way of specifying where to find 3rd party libraries from configure script or at least via make arguments.
-
Figured the problem.
If you call configure script with "-icu" option then pkg-config isn't taking effect. This is counter-intuitive.
Also "LD_LIBRARY_PATH=<icudir>" is required during make because what seems to be a bug in some webkit subdirectory which doesnt respect PKG_CONFIG_PATH.Once "-no-icu", PKG_CONFIG_PATH in configure script and PKG_CONFIG_PATH, LD_LIBRARY_PATH in make are specified it works fine.