Bibliotecas compatibles

Spectrum™ Technology Platform proporciona una API C de versión ASCII y Unicode, mientras que la versión Unicode sigue siendo lo más compatible posible con el diseño de la API original de versión ASCII. Spectrum™ Technology Platform aplica las librerías International Components for Unicode (UCI) en la API para ofrecer compatibilidad con Unicode. ICU es un conjunto de bibliotecas C/C++ maduras ampliamente utilizado para la compatibilidad con Unicode, desarrollado por IBM.

El estándar Unicode define una codificación predeterminada sobre la base de unidades de código de 16 bits. Para brindar la compatibilidad necesaria en ICU, se define UChar como un tipo de entero de 16 bits sin firmar (unsigned short *). Este es el tipo base para las matrices de caracteres para las cadenas de caracteres en la ICU. Spectrum™ Technology Platform utiliza UChar como la representación de cadenas de caracteres Unicode en nuestra API C.

Nota: Algunos servicios no son compatibles con todo el conjunto de caracteres Unicode. Por ejemplo, el servicio ValidateAddress admite el conjunto de caracteres ISO 8859-1 para entrada de datos de Estados Unidos y entrada y salida de datos internacionales, y el conjunto de caracteres CP 850 para entrada y salida de datos de Canadá. No obstante, las bibliotecas Unicode deben utilizarse siempre que exista la posibilidad de que los datos de entrada contengan caracteres que no son ASCII, incluso si el servicio subyacente no admite todo el conjunto de caracteres Unicode.

Para obtener información detallada acerca de UChar, consulte estos dos sitios:

  • icu.sourceforge.net/userguide/
  • www-306.ibm.com/software/globalization/icu/index.jsp

Windows

Cada configuración de API genera archivos de biblioteca con un nombre básico común (g1client) y un sufijo exclusivo, además de un posible prefijo ("lib" en el caso de las bibliotecas estáticas). Los sufijos de bibliotecas actúan de este modo:

<lib>g1client<S><U><D>.<lib|dll>

  • lib: indica una biblioteca estática.
  • dll: indica una biblioteca dinámica (compartida).
  • S: indica una versión de subproceso único. Si esta letra no aparece, significa que se trata de una versión de subprocesos múltiples.
  • U: indica una versión UNICODE. Si esta letra no aparece, significa que se trata de una versión ASCII.
  • D: indica una versión de depuración. Si este sufijo no aparece, significa que se trata de una versión de emisión optimizada.

Para activar la versión UNICODE, la definición macro LIB_UNICODE debe estar en su proyecto.

Para usar la versión UNICODE de biblioteca API C/C++ estática, debe definir U_STATIC_IMPLEMENTATION en su proyecto.

Para usar la versión dinámica, debe definir G1CLIENT_DLL en su proyecto.

También se proporciona un archivo denominado "auto_link.h" en el directorio de archivos de encabezado, que automáticamente se vincula con todas las bibliotecas correspondientes de acuerdo con la configuración del proyecto.

Para invocar las bibliotecas de 64 bits en Windows, debe definir VER_64 en su proyecto.

Biblioteca estática

Subproceso único/Emisión

 

Ascii

Unicode

G1

libg1client_S.lib

libg1client_SU.lib

openssl

otlibeay64.lib otlibssl64.lib

otlibeay64.lib otlibssl64.lib

opentop

opentop.lib

opentopw.lib

icu

 

libicuuc.lib libicudt.lib libicuin.lib libicuio.lib

Poco

PocoXML64.lib

PocoXML64w.lib

Subproceso único/Depuración

 

Ascii

Unicode

G1

libg1client_SD.lib

libg1client_SUD.lib

openssl

otlibeay64d.lib otlibssl64d.lib

otlibeay64d.lib otlibssl64d.lib

opentop

opentopd.lib

opentopwd.lib

icu

 

libicuucd.lib libicudtd.lib libicuind.lib libicuiod.lib

Poco

PocoXML64d.lib

PocoXML64wd.lib

Subprocesos múltiples/Emisión (por medio de CRT de subprocesos múltiples)

 

Ascii

Unicode

G1

libg1client.lib

libg1client_U.lib

openssl

otlibeay64mt.lib otlibssl64mt.lib

otlibeay64mt.lib otlibssl64mt.lib

opentop

opentopmt.lib

opentopmtw.lib

icu

 

libicuucmt.lib libicudtmt.lib libicuinmt.lib libicuiomt.lib

Poco

PocoXMLmt64.lib

PocoXML64mtw.lib

Subprocesos múltiples/Depuración (por medio de CRT de subprocesos múltiples)

 

Ascii

Unicode

G1

libg1client_D.lib

libg1client_UD.lib

openssl

otlibeay64mtd.lib otlibssl64mtd.lib

otlibeay64mtd.lib otlibssl64mtd.lib

opentop

opentopmtd.lib

opentopmtwd.lib

icu

 

libicuucmtd.lib libicudtmtd.lib libicuinmtd.lib libicuiomtd.lib

Poco

PocoXMLmt64d.lib

PocoXML64mtwd.lib

Biblioteca dinámica

Subprocesos múltiples/Emisión (por medio de CRT de subprocesos múltiples)

 

Ascii

Unicode

G1

g1client.dll

g1client_U.dll

openssl

otlibeay64mts.dll otlibssl64mts.dll

otlibeay64mts.dll otlibssl64mts.dll

opentop

opentopmts.dll

opentopmtws.dll

icu

 

icuuc64.dll icuio64.dll icuin64.dll icudt64.dll

Poco

PocoXML64mts.dll

PocoXML64mtws.dll

Subprocesos múltiples/Depuración (por medio de CRT de subprocesos múltiples)

 

Ascii

Unicode

G1

g1client_D.dll

g1client_UD.dll

openssl

otlibeay64mtds.dll otlibssl64mtds.dll

otlibeay64mtds.dll otlibssl64mtds.dll

opentop

opentopmtds.dll

opentopmtwds.dll

icu

 

icuuc64d.dll icuio64d.dll icuin64d.dll icudt64d.dll

Poco

PocoXML64mtds.dll

PocoXML64mtwds.dll

Unix

Cada configuración ClientSDK produce archivos de la biblioteca con un nombre base común (libg1client ) pero con un sufijo único. Spectrum™ Technology Platform ofrece una versión de subprocesos múltiples y emisión para la versión ASCII y la versión UNICODE.

Los sufijos de bibliotecas actúan de este modo:

libg1client<U>.<so|sl|a>

  • U: indica una versión UNICODE. Si esta letra no aparece, significa que se trata de una versión ASCII.

Para usar la versión UNICODE, debe definir LIB_UNICODE en su proyecto.

En la API C++ de versión UNICODE, el espacio de nombres para todas las clases es g1client.

AIX

   
 

Ascii

Unicode

G1

libg1client.so

libg1client_U.so

openssl

libcrypto.so libssl.so

libcrypto.so libssl.so

opentop

libopentop-xlCmt.so

libopentop-xlCmtw.so libotxml-xlCmtw.so

icu

 

libicudata34.a libicui18n34.a libicuio34.a libicuuc34.a

Poco

libPocoXML.so

 

HP-UX

   
 

Ascii

Unicode

G1

libg1client.sl

libg1client_U.sl

openssl

libcrypto.sl libssl.sl libcrypto.sl.0.9.7 libssl.sl.0.9.7

libcrypto.sl libssl.sl libcrypto.sl.0.9.7 libssl.sl.0.9.7

opentop

libopentop-accmt.sl

libopentop-accmtw.sl libotxml-accmtw.sl

icu

 

libicudata.sl libicudata.sl.34 libicui18n.sl libicui18n.sl.34 libicuio.sl libicuio.sl.34 libicuuc.sl libicuuc.sl.34

Poco

libPocoXML.sl

 

Itanium

   
 

Ascii

Unicode

G1

libg1client.sl

libg1client_U.sl

openssl

libcrypto.a libssl.a

libcrypto.a

libssl.a

opentop

libopentop-accmt.sl

libopentop-accmtw.sl libotxml-accmtw.sl

icu

 

libicudata.sl libicudata.sl.34 libicudata.sl.34.0 libicui18n.sl libicui18n.sl.34 libicui18n.sl.34.0 libicuio.sl libicuio.sl.34 libicuio.sl.34.0 libicuuc.sl libicuuc.sl.34 libicuuc.sl.34.0

Poco

libPocoXML.sl

 

Linux

   
 

Ascii

Unicode

G1

libg1client.so

libg1client_U.so

openssl

libcrypto.so libcrypto.so.0.9.7 libssl.so libssl.so.0.9.7

libcrypto.so libcrypto.so.0.9.7 libssl.so libssl.so.0.9.7

opentop

libopentop-gccmt.so

libopentop-gccmtw.so libotxml-gccmtw.so

icu

 

libicudata.so libicudata.so.34 libicui18n.so libicui18n.so.34 libicuio.so libicuio.so.34 libicuuc.so libicuuc.so.34

Poco

libPocoXML.so

 

Solaris

   
 

Ascii

Unicode

G1

libg1client.so

libg1client_U.so

openssl

libcrypto.so libcrypto.so.0.9.7 libssl.so libssl.so.0.9.7

libcrypto.so libcrypto.so.0.9.7 libssl.so libssl.so.0.9.7

opentop

libopentop-fortemt.so

libopentop-fortemtw.so libotxml-fortemtw.so

icu

 

libicudata.so libicudata.so.34 libicui18n.so libicui18n.so.34 libicuio.so libicuio.so.34 libicuuc.so libicuuc.so.34

Poco

libPocoXML.so