Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » UltraLite - C and C++ Programming » Application development » UltraLite C++ application development » How to build and deploy UltraLite C++ applications


Deploying an UltraLite application for Mac OS X or iOS

Specify appropriate creation parameters, connection parameters, synchronization parameters, protocol options, method calls, and deployment files to ensure that your UltraLite application runs successfully on Mac computers, iPhones or iPads.


There are no prerequisites for this task.

  1. For Mac OS X, add the following runtime library files to your Xcode project:

    • /Applications/SQLAnywhere16/System/ultralite/macosx/x86_64/libulrt.a

    • /Applications/SQLAnywhere16/System/ultralite/macosx/x86_64/libulbase.a

  2. For iOS, to link to the UltraLite runtime library, either:

    Add install-dir/ultralite/iphone/libulrt.a to the Frameworks group in Xcode.


    Add the following to the Other Linker Flags (OTHER_LDFLAGS) build setting:


    where SQLANY_ROOT is a custom build setting set to the SQL Anywhere installation directory.

    UltraLite runtimes must be built after installation. Follow the instructions provided in install-dir/ultralite/iphone/readme.txt.

  3. Add the appropriate frameworks to your Xcode project:

    • For Mac OS X, CoreFoundation.framework, CoreServices.framework, and Security.framework.

    • For iOS, CFNetwork.framework and Security.framework.

  4. Specify the following parameters:

    • When using obfuscation, set the creation parameter obfuscate=1 while creating the database.

    • When using AES encryption, set the connection parameter DBKEY=encryption-key while creating or connecting to the database.

  5. Set the appropriate parameter settings when using synchronization in your UltraLite application:

    Synchronization type Parameter settings

    Set the Stream synchronization parameter to tcpip.


    Set the Stream synchronization parameter to http.


    Set the Stream synchronization parameter to tls.


    Set the Stream synchronization parameter to https.

  6. When using RSA E2EE encryption, set the protocol option e2ee_public_key=key-file.

  7. When using ZLIB compression, set the protocol option compression=zlib.

  8. When using AES encryption, call the ULDatabaseManager.EnableAesDBEncryption method.

  9. Ensure that the following methods are called for the synchronization type used in your UltraLite application:

    Synchronization type Parameter settings

    Call the EnableTcpipSynchronization method.


    Call the EnableHttpSynchronization method.


    Call the EnableTlsSynchronization and EnableRsaSyncEncryption methods.


    Call the EnableHttpsSynchronization and EnableRsaSyncEncryption methods.


The UltraLite application runs successfully on the Mac OS X desktop or iOS device that it is deployed to.


Deploy an UltraLite database to the Mac desktop, iPhone, or iPad that the application was deployed to, or create a new database with the deployed application.

 See also