Para instalar o OpenSSL em um dispositivo iOS de 64 bits, você deve copiar os arquivos da biblioteca SSL libcrypto.a e libssl.a para o seu sistema. Baixe o .zip do iOS OpenSSL, extraia-o e encontre os arquivos .a no diretório \lib. Você deve copiar os arquivos da biblioteca SSL libcrypto.a e libssl.a para estes diretórios:
C:\Program Files (x86)\Embarcadero\Studio\<IDE Version>\lib\iosDevice64\debug
C:\Program Files (x86)\Embarcadero\Studio\<IDE Version>\lib\iosDevice64\release
Adicione a unit sgcIdSSLOpenSSLHeaders_static (ou IdSSLOpenSSLHeaders_static se sua edição do sgcWebSockets não for Enterprise) à sua cláusula uses.
Se você precisar implantar qualquer arquivo, você pode definir RemotePath = StartUp\Documents e, para carregar o arquivo, utilize (requer adicionar System.IOUtils à cláusula uses):
TPath.GetDocumentsPath + PathDelim + <your filename>
As bibliotecas openSSL não devem ser implantadas utilizando o menu Project/Deployment no iOS.
Modifique IdCompilerDefines.inc e habilite SGC_OPENSSL_API_1_1 na seção IOS:
{$IFDEF IOS}
{$DEFINE HAS_getifaddrs}
{$DEFINE USE_OPENSSL}
{$IFDEF CPUARM}
// RLebeau: For iOS devices, OpenSSL cannot be used as an external library,
// it must be statically linked into the app. For the iOS simulator, this
// is not true. Users who want to use OpenSSL in iOS device apps will need
// para adicionar a biblioteca estática OpenSSL ao projeto e então incluir o
// IdSSLOpenSSLHeaders_static unit in their uses clause. It hooks up the
// funções vinculadas estaticamente para a unit IdSSLOpenSSLHeaders utilizar...
{$DEFINE STATICLOAD_OPENSSL}
// sgc--> habilite para openssl API 1.1
{$DEFINE SGC_OPENSSL_API_1_1}
{$ENDIF}
{$ENDIF}
Você pode baixar as bibliotecas a partir da sua conta.
Modifique IdCompilerDefines.inc e habilite SGC_OPENSSL_API_1_1 e SGC_OPENSSL_API_3_0 na seção IOS:
{$IFDEF IOS}
{$DEFINE HAS_getifaddrs}
{$DEFINE USE_OPENSSL}
{$IFDEF CPUARM}
// RLebeau: For iOS devices, OpenSSL cannot be used as an external library,
// it must be statically linked into the app. For the iOS simulator, this
// is not true. Users who want to use OpenSSL in iOS device apps will need
// para adicionar a biblioteca estática OpenSSL ao projeto e então incluir o
// IdSSLOpenSSLHeaders_static unit in their uses clause. It hooks up the
// funções vinculadas estaticamente para a unit IdSSLOpenSSLHeaders utilizar...
{$DEFINE STATICLOAD_OPENSSL}
// sgc--> habilite para openssl API 1.1
{$DEFINE SGC_OPENSSL_API_1_1}
// sgc--> enable for openssl API 3.0
{$DEFINE SGC_OPENSSL_API_3_0}
{$ENDIF}
{$ENDIF}
Você pode baixar as bibliotecas a partir da sua conta.