Static Qt 5.4.1 without libtiff dependency?
-
Hi there,
I have a Qt application which I build for a variety of operating systems including Linux. Up until recently I've been using Qt 4 for Linux because it seems to have a lot less dependencies than Qt 5. Very recently I tried building against Qt 5 and let a few of our users try it out. I've tried minimizing dependencies on system libraries using this configuration:
./configure -static -nomake examples -qt-zlib -qt-libpng -qt-libjpeg -qt-freetype -qt-harfbuzz -qt-xcb -qt-xkbcommon
It emerged that dependencies on the ICU and libtiff system libraries were causing compatibility issues on other Linux distributions. ICU was easy to take care of, I just added the -no-icu switch. Webkit needs it, but I don't use Webkit in my project. However I can't figure how to remove the libtiff dependecy. Earlier versions of Qt 5 had a -qt-libtiff switch but not Qt 5.4.1. I could do without tiff support entirely if it's an option. Does anyone know of a possible way to address this issue?
Thanks, Nir
-
Hi,
The tiff support has moved to the qtimageformats plugin. You can also find the sources of libtiff in that module
Hope it helps
-
Interesting. I tried: QTPLUGINS += qtiff in my project file and it told me it was redundant, I guess because qtiff is already included. So then why is there a dependency on the system's tiff library? I event tried removing the qtiff plugin with QTPLUGINS -= qtiff but it didn't change anything. Maybe there's another component in the Qt library that might rely on it that's creating this dependency?
-
Are you using stuff that is only in qtbase ?
-
My project file uses:
QT += widgets core gui network multimedia
Is that what you mean?
-
Yes that's what I meant. What you can do is just build qtbase first and then qtmultimedia afterwards. So you'll ensure that you have only these two built, no qtimageformats etc.