After upgrading to Lazarus 2.0.10 FPC 3.2.0 , my existing code using TFPHTTPClient.Get('https://api.telegram.org/bot')
returns the error "No SSL Socket support compiled in"
How can I fix it?
Dennis

Mailing lists / fpc-pascal / 2020-08
11 messages · 4 people · –
Reply by email Subscribe to this list Your subscription
Read-only archive. Use j and k to move between messages.
After upgrading to Lazarus 2.0.10 FPC 3.2.0 , my existing code using TFPHTTPClient.Get('https://api.telegram.org/bot')
returns the error "No SSL Socket support compiled in"
How can I fix it?
Dennis
Simply add one of the units opensslsockets or gnutlssockets to the uses clause of the program.
You now have the choice between using openssl or gnutls for your SSL support..
Michael.
Can this information being added into
https://wiki.freepascal.org/User_Changes_3.2.0, please?
TIA
-Laco.
Done.
Michael.
Perfect!
L.
Simply add one of the units opensslsockets or gnutlssockets to the uses clause of the…
I added gnutlssockets but when calling Get, i got this error:
Could not load library: libgnutls.so
Please help.
Dennis Poon
Do you have gnutls installed, and does the symbolic link exist ?
Michael.
I have not installed gnutls. The machine is running windows 64. So, the error message simply means the *.dll files of gnutls are missing?
Dennis
Yes.
if you previously used openssl, then use unit opensslsockets instead, it should work as before.
(although I think GnuTLS is easier and better; it has less legacy than openssl)
Michael.
I have not installed gnutls. The machine is running windows 64. So, the error message…
I'm afraid that it probably means that the authors of the gnutls unit forgot to pay attention to differences between Unix and non-Unix (at least as far as the dynamic library extension is concerned). :-( Nevertheless, even if this is corrected, you'd obviously need to have the respective DLL installed in order to use it. If you have used TFPHTTPClient in the past, you probably have the OpenSSL libraries installed, thus you may want to add that one instead of gnutlssockets.
Tomas
Yes and no.
The name is just a default. You can specify the library name:
procedure LoadGnuTLS(alib : String = '');so adding
LoadGnuTLS('libgnutls.dll')
at the start of your program will do the trick.
But of course the defaults should be correct for all platforms.
I changed that.
Michael.