AnyConnect Secure Mobility Client 3.1.11004

- Main Page
- Related Pages
- Classes
- Files

# Building an AnyConnect client

The API bundle contains the libraries, project files, and build scripts required to build the included examples.

At this time, the supported platforms include those supported in the current release of AnyConnect. These include Windows platforms, MAC (PPC and Intel) and Linux. Look in the example directory for test programs. Also, see the Examples section on the "Advanced Topics" page with this documentation.

## Windows

There are several issues with the API and integrating it into your client application on a Windows platform when using the static libraries. One issue to be aware of is the version of Visual Studio currently supported. To interact with the installed VpnApi.dll directly, please see the COM API documentation.

### Visual Studio

On Windows, the static libs provided require the client implementor to build using VS2005 in conjunction with Service pack 1.

For more information about this service pack, see http://support.microsoft.com/kb/926601

You may be able to initiate a download of this service pack from http://msdn2.microsoft.com/en-us/express/aa975050.aspx

### AnyConnect VpnApi dll

The dlls that come with AnyConnect installation are not suitable for use in programs built with the API. As of 2.3, a COM API is available to interact with the installed VpnApi.dll directly. Please see the COM API documentation for more information.

### Debugging

Another issue when building your test client with the AnyConnect provided static libs has to do with the type of build. As debug builds are not shipped with the AnyConnect bundle, you will only be able to do Release builds.

This will not prevent you from debugging your code, it will just keep you from inspecting the AnyConnect internals. To debug your client implementation it is required that the pdb file reside in the same directory as the executable you are trying to debug.

For example, if your executable is vpnui.exe you will need to have the file vpnui.pdb in the directory with vpnui.exe when you run vpnui.exe in the debugger.

### Wide Character Support

The API is available on Windows in wide string format only. This means code using the API must also be built for Unicode support. On non-Windows platforms, the API is not built for wide-string support. The API still handles multibyte languages in this format.

## MAC and Linux

The required libraries and header files needed for MAC (PowerPC and Intel) and Linux integration with the API are available in this bundle. The CLI example (example/CLI) contains build command examples for Linux and MAC PowerPC platforms.

The AnyConnect libraries are build with gcc version 4.0.0 on Linux and version 4.0.1 for MAC platforms.

Note: The non-Windows build scripts assume that AnyConnect is already installed.