How to point Qt to use different OpenSSL version



  • Hi

    I have linux with Qt 4:4.6.3-4+squeeze1 and openssl 0.9.8o-4squeeze14
    There is problem with communication between openssl.0.9.8 and openssl 1.0 described here:

    http://stackoverflow.com/questions/8619706/running-curl-with-openssl-0-9-8-against-openssl-1-0-0-server-causes-handshake-er

    http://marc.info/?l=openssl-dev&m=136760073921954&w=2

    I have built openssl-1.0.2j to /home/openssl but I can't make Qt using this library. SSL is dynamically linked so ldd my_program doesn't show libssl.
    I have tried

    LD_LIBRARY_PATH=/home/openssl ./my_program
    

    But it doesnt work, I can see with command:

    $ lsof -p 16126|grep -i ssl
    ccbox-ccd 16126 root  mem    REG       80,5   310296  8389597 /usr/lib/i686/cmov/libssl.so.0.9.8
    $ lsof -p 16126|grep -i crypt
    ccbox-ccd 16126 root  mem    REG       80,5   469632 29365978 /usr/lib/libgcrypt.so.11.5.3
    ccbox-ccd 16126 root  mem    REG       80,5   143180 29375951 /usr/lib/libk5crypto.so.3.1
    ccbox-ccd 16126 root  mem    REG       80,1    38360  1104731 /lib/i686/cmov/libcrypt-2.11.3.so
    ccbox-ccd 16126 root  mem    REG       80,5  1393308  8389598 /usr/lib/i686/cmov/libcrypto.so.0.9.8
    

    that it is always using 0.9.8 also editing /etc/ld.so.conf doesn't help

    How to point Qt to use never version of openssl

    Best Regards
    Marek


  • Lifetime Qt Champion

    Hi,

    Out of curiosity, why do you need to work with such an outdated system ? Qt 4.6.3 is more than 6 years old. Can't you upgrade to a more recent version ? At least 4.8.7 or better like Qt 5 (5.8 beta has been released)



  • Hi

    You are right it is old server. One of the options is to compile some Qt version or try to upgrade Linux to wheezy.
    The problem is that it is old computer and I have a few more applications running on it like dnyDNS, upgrade is risky, so I thought I can get away with only new openssl version. Simply I'm affraid that apt -get diist-upgrade may end wiith a disaster ;)
    On the other hand, I'm frustrated with this problem, I thought LD_LIBRARY_PATH should work, so why isn't ?

    Best Regards
    Marek


  • Lifetime Qt Champion

    If the distribution package is built the same as the precompiled package then OpenSSL is not linked but dlopened.



  • which means that dlopened libraries can't be changed ?
    new Qt veersion seems to be a good option.



  • ok after reading some more dynamic loading looks like just mapping specific library/executable and not resolving so files.
    Thanks or that answer



  • I ended up with Qt 5.3.2 and openssl-1.0.1t
    Finally works.

    Best Regards
    Marek


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.