[Interest] Conflicting libjpeg versions

Etienne Sandré-Chardonnal etienne.sandre at m4x.org
Tue Mar 29 18:20:21 CEST 2016


I just recompiled Qt with -system-libjpeg, but the problem persists.
It seems impossible not to link my application with a qt-bundled libjpeg

That's strange... Which Qt version are you using?

I have looked into Qt sources, and three different libjpeg are shipped :
one with webkit, one with qtwebengine, and one with qtbase. The first one
is libjpeg-turbo 62, the two other are libjpeg 80

2016-03-29 16:55 GMT+02:00 Olivier B. <perso.olivier.barthelemy at gmail.com>:

> oops, ignore my 2nd sentence, i mixed up png and jpeg
>
> 2016-03-29 16:51 GMT+02:00 Olivier B. <perso.olivier.barthelemy at gmail.com>
> :
>
>> I do -system-libjpeg -I ${ENV_LIBJPEG_PATH}/include -L
>> ${ENV_LIBJPEG_PATH}/lib  on my configure line to use my own libjpeg
>> version.
>> I also sed in qtbase/src/3rdparty/png_dependency.pri between debug and
>> release build, in order to use a debug libjpeg in my debug qt and a release
>> libjpeg in my release qt
>>
>> If you build a static Qt, it is written in Qt static libs at qt build
>> time that they need 62. But actual linking with libjpeg is done at link
>> time of your exe. So if the path to the wrong libjpeg is passed at
>> executable llink time, you might get the error you are seing at runtime
>>
>> 2016-03-29 16:45 GMT+02:00 Etienne Sandré-Chardonnal <
>> etienne.sandre at m4x.org>:
>>
>>> Hi,
>>>
>>> There is no dependency to any libjpeg DLL, as checked with dependency
>>> walker. And I have searched for any libjpeg*.dll in my system, none of them
>>> are inside the PATH. The libjpeg is linked statically.
>>>
>>> Which options do I have for configuring Qt? I only know the option which
>>> switches between embedded libjpeg and system libjpeg, and using the latter
>>> should normally make Qt use the 6.2 that is installed in the compiler
>>> folders (include/lib)
>>>
>>>
>>>
>>>
>>> 2016-03-29 16:24 GMT+02:00 Olivier B. <
>>> perso.olivier.barthelemy at gmail.com>:
>>>
>>>> Either your PATH is set so the wrong libjpeg dll is found first, or qt
>>>> found the wrong jpeg include first.
>>>> If you don't care which version is used, set your PATH so that your
>>>> system libjpeg 6.2 is found first at runtime (or place the libjpeg dll of
>>>> the version that was detected beside your executable). If you want a
>>>> specific version, change qt configure options accordingly
>>>>
>>>> 2016-03-29 16:18 GMT+02:00 Etienne Sandré-Chardonnal <
>>>> etienne.sandre at m4x.org>:
>>>>
>>>>> Dear all,
>>>>>
>>>>> I am compiling under windows with MinGW (64-bit)
>>>>>
>>>>> I compiled Qt for static linking. I let the default options for
>>>>> configure regarding jpeg support, and it seems that it choose using the
>>>>> system libjpeg (as seen in config.summary), probably because it detected
>>>>> it. My system libjpeg is the binary shipped by libjpeg-turbo 1.4.2 official
>>>>> download, installed inside minGW folders. The libjpeg version as in
>>>>> jconfig.h is 62 (6.2)
>>>>>
>>>>> Now when I compile and run my application, libjpeg functions return
>>>>> the following error message : Wrong JPEG library version: library is
>>>>> 80, caller expects 62
>>>>>
>>>>> So it means that at some point my application was linked (statically
>>>>> or dynamically) with libjpeg version 80 (8.0)
>>>>>
>>>>> If I remove the libjpeg.a from my compiler path, I cannot compile my
>>>>> application anymore. So it is properly linking against that file, or I am
>>>>> missing something.
>>>>>
>>>>> What could be the issue?
>>>>>
>>>>> Thanks...
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Interest mailing list
>>>>> Interest at qt-project.org
>>>>> http://lists.qt-project.org/mailman/listinfo/interest
>>>>>
>>>>>
>>>>
>>>> _______________________________________________
>>>> Interest mailing list
>>>> Interest at qt-project.org
>>>> http://lists.qt-project.org/mailman/listinfo/interest
>>>>
>>>>
>>>
>>
>
> _______________________________________________
> Interest mailing list
> Interest at qt-project.org
> http://lists.qt-project.org/mailman/listinfo/interest
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/interest/attachments/20160329/b5161d7a/attachment.html>


More information about the Interest mailing list