dca_interface  6.3.4
Requirements for using the SCA on Linux

Introduction

The supported Linux compiler is the gcc.

The following packages are required on all platforms:

  • libcurl
  • libz

For using the ZLA Classification Package, the following libraries are also required:

  • libjpeg
  • libpng
  • libmng
  • libtiff

3rd party libraries

Software packages required for using the SCA on SLES 10 and Fedora Core 3:

boost1.33.1http://www.boost.org/users/history/version_1_33_1
icu 3.8.1 http://icu-project.org/download/3.8.html
libxml2 2.6.23 ftp://xmlsoft.org/libxml2/old/

Download the source package and unpack it to a separate directory.

Follow the instructions in the source package to configure, compile and install the package.

On Debian5 (lenny) the default packages can be used:

  • boost1.34.1
  • icu 3.8.1
  • libxml2 2.6.32

On CentOS 5.4 the default packages can be used:

  • boost1.33.1
  • icu 3.6
  • ibxml2 2.6.26

Note:

Ensure that the required versions of the libraries lie in the system library path (e.g. /usr/lib or /usr/lib64). If this is not the case and the required libraries must lie elsewhere (e.g. /usr/local/lib), please ensure that your application makefile links to the correct library. This can be achieved, for example, by specifying -L"<my_library_path>" in the makefile before the libraries are specified. Failure to link to the required libraries could lead to runtime errors in the SCA.

Ensure also that the directory which contains the libraries has a .so link to the required library, for example:

/usr/lib/libxml2.so -> libxml2.so.2.6.32

If this is not the case, you may encounter link errors when building your application with the SCA.

Development libraries

The SCA uses internally libcurl and OpenSSL. These libraries must be initialized by a client application before being used. If your application does not perform this initialization already, you could use the functions provided by the SCA API for this purpose.

In order to use the provided support functions, the development packages for libcurl and OpenSSL must also be installed on your build system. The development packages do not need to be installed on the runtime system.

See also
Initialization of 3rd party libraries

Linking your application with the SCA

Your application must be linked against the provided linker libraries from the development package, and when necessary, against required 3rd party libraries.

Since the API is provided as static linker libraries, any application that wants to use the SCA must link with them.

Dependent on your license you will receive different SCA packages including different modules of the SCA.

The following list shows the SCA modules and the related linker libraries:

Linker Library Description
libdca.lib Generic library all applications must link with
libdca_url.lib URL Classification
libdca_text.lib Text Classification
libdca_customdb.lib Custom Database Module Toolbox
libdca_ipr.lib IP Reputation
libdca_malware.lib Malware Classification
libdca_wac.lib Web Application Classification (WAC)
libdca_zla.lib Zero Level Analysis Classification (ZLA)

The following linker options to 3rd party and system libraries must always be specified:

-lcurl -lxml2 -lboost_regex -ld

ICU library if required:

-licudata -licuuc -licui18n

The following linker options must also be specified when using the ZLA Classification Package:

-ljpeg -lpng -lmng -ltiff

Sample programs and makefiles are provided in the directory dca/samples.

See also
File organization
Linux: Getting started with samples
Samples