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.
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.
Subproceso único/Emisión |
||
Ascii |
Unicode |
|
G1 |
libg1client_S.lib |
libg1client_SU.lib |
openssl |
otlibeay32.lib otlibssl32.lib |
otlibeay32.lib otlibssl32.lib |
opentop |
opentop.lib |
opentopw.lib |
icu |
libicuuc.lib libicudt.lib libicuin.lib libicuio.lib |
|
Poco |
PocoXML32.lib |
PocoXML32w.lib |
Subproceso único/Depuración |
||
Ascii |
Unicode |
|
G1 |
libg1client_SD.lib |
libg1client_SUD.lib |
openssl |
otlibeay32d.lib otlibssl32d.lib |
otlibeay32d.lib otlibssl32d.lib |
opentop |
opentopd.lib |
opentopwd.lib |
icu |
libicuucd.lib libicudtd.lib libicuind.lib libicuiod.lib |
|
Poco |
PocoXML32d.lib |
PocoXML32wd.lib |
Subprocesos múltiples/Emisión (por medio de CRT de subprocesos múltiples) |
||
Ascii |
Unicode |
|
G1 |
libg1client.lib |
libg1client_U.lib |
openssl |
otlibeay32mt.lib otlibssl32mt.lib |
otlibeay32mt.lib otlibssl32mt.lib |
opentop |
opentopmt.lib |
opentopmtw.lib |
icu |
libicuucmt.lib libicudtmt.lib libicuinmt.lib libicuiomt.lib |
|
Poco |
PocoXMLmt32.lib |
PocoXML32mtw.lib |
Subprocesos múltiples/Depuración (por medio de CRT de subprocesos múltiples) |
||
Ascii |
Unicode |
|
G1 |
libg1client_D.lib |
libg1client_UD.lib |
openssl |
otlibeay32mtd.lib otlibssl32mtd.lib |
otlibeay32mtd.lib otlibssl32mtd.lib |
opentop |
opentopmtd.lib |
opentopmtwd.lib |
icu |
libicuucmtd.lib libicudtmtd.lib libicuinmtd.lib libicuiomtd.lib |
|
Poco |
PocoXMLmt32d.lib |
PocoXML32mtwd.lib |
Subprocesos múltiples/Emisión (por medio de CRT de subprocesos múltiples) |
||
Ascii |
Unicode |
|
G1 |
g1client.dll |
g1client_U.dll |
openssl |
otlibeay32mts.dll otlibssl32mts.dll |
otlibeay32mts.dll otlibssl32mts.dll |
opentop |
opentopmts.dll |
opentopmtws.dll |
icu |
icuuc32.dll icuio32.dll icuin32.dll icudt32.dll |
|
Poco |
PocoXML32mts.dll |
PocoXML32mtws.dll |
Subprocesos múltiples/Depuración (por medio de CRT de subprocesos múltiples) |
||
Ascii |
Unicode |
|
G1 |
g1client_D.dll |
g1client_UD.dll |
openssl |
otlibeay32mtds.dll otlibssl32mtds.dll |
otlibeay32mtds.dll otlibssl32mtds.dll |
opentop |
opentopmtds.dll |
opentopmtwds.dll |
icu |
icuuc32d.dll icuio32d.dll icuin32d.dll icudt32d.dll |
|
Poco |
PocoXML32mtds.dll |
PocoXML32mtwds.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 |