Forum > Networking and Web Programming
Debian 10 Indy and SSL, Not load library
BlueIcaro:
Hello, I'm playing with Indy, I installed using Online Package Manager. I donwload the proyect from here:
https://forum.lazarus.freepascal.org/index.php?topic=24565.0
And I add a TIdSSLIOHandlerSocketOpenSSL component. In the TIdhttp OIHandler property I add the TIdSSLIOHandlerSocketOpenSSL component.
But I can't load any https web. I got a Load Library error.
Debian 10, says that I have load the package using: apt-get install libssl1.1
OnCreate Event I wrote:
--- Code: --- If IsOpenSSL_1x then
begin
Caption:='v1';
end
else
begin
Caption := 'No';
end;
--- End code ---
And the funtion returns false.
Any idea?
I using Lazarus 2.06, Debian 10/64Bits
Thanks
/BlueIcaro
Bi0T1N:
The problem is that Debian 10 ships with OpenSSL 1.1.1 which isn't supported by Indy yet. If you run openssl version -v you'll see that you have OpenSSL 1.1.1 installed.
To use Indy you need to compile your own OpenSSL 1.0.2 library:
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---wget https://www.openssl.org/source/old/1.0.2/openssl-1.0.2u.tar.gztar -xf openssl-1.0.2u.tar.gzcd openssl-1.0.2u./config sharedmakeAfter that you can copy libssl.so and libcrypto.so to your application folder and set the path via IdOpenSSLSetLibPath to load the OpenSSL 1.0.2 files.
Remy Lebeau:
--- Quote from: Bi0T1N on March 20, 2020, 05:42:56 pm ---To use Indy you need to compile your own OpenSSL 1.0.2 library
--- End quote ---
Or otherwise obtain pre-compiled binaries for it. But yes, 1.0.2 is a requirement at this time.
--- Quote from: Bi0T1N on March 20, 2020, 05:42:56 pm ---After that you can copy libssl.so and libcrypto.so to your application folder and set the path via IdOpenSSLSetLibPath to load the OpenSSL 1.0.2 files.
--- End quote ---
If the binaries are in the same folder as your app, you should not need to call IdOpenSSLSetLibPath().
BlueIcaro:
--- Quote from: Bi0T1N on March 20, 2020, 05:42:56 pm ---
After that you can copy libssl.so and libcrypto.so to your application folder and set the path via IdOpenSSLSetLibPath to load the OpenSSL 1.0.2 files.
--- End quote ---
After follow your instruccions, where Can I find that files ?
I copy from /usr/lib/x86_64-linux-gnu/ but It doesn't work. I thing that file are 1.1 version
/BlueIcaro
Bi0T1N:
I'm sorry, I missed the important keyword shared in my inital post. Use ./config shared instead of ./config.
For copying you can use:
--- Code: Pascal [+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i < x.length; i++) { x[i].style.maxHeight='none'; x[i].style.height = Math.min(x[i].clientHeight+15,306)+'px'; x[i].style.resize = "vertical";}};} ---cp *.so /path/to/copy/to
Navigation
[0] Message Index
[#] Next page