You are here: Start » Getting Started » SDK Installation

SDK Installation


FabImage Library is designed to be a part of applications working under control of the Microsoft Windows operating system. Supported versions are: 10 and 11, as well as the corresponding embedded editions.

To build an application using FabImage Library, Microsoft Visual Studio environment is required. Supported versions are: 2015, 2017 and 2019.

Running the Installer

The installation process is required to copy the files to the proper folders and to set the environment variables used for building applications using FabImage Library.

After the installation, a license for FabImage Library product has to be loaded. It can be done with the License Manager tool available in the Start Menu.

To verify that the installation has been successful and the license works correctly, one can try to load, build and run example programs, which are available from the Start Menu.

SDK Directories

FabImage Library is distributed as a set of header files (.h), dynamic (.dll) and static (.lib) libraries. The libraries (static and dynamic) are provided in versions for 32-bit and 64-bit system. The header files are common for both versions.

The picture below shows the structure of the directories containing headers and libraries included in FabImage Library.

The directories (installed in the Program Files system folder) being a part of FabImage Library are shortly described below.

  • ftl_visualizers – a directory containing the visualizers for Microsoft Visual Studio Debugger of FabImage Library data types.
  • bin – a directory containing dynamic linked library files (FIL.dll) for 32|64-bit applications. The libraries are common for all supported versions of Microsoft Visual Studio and for Debug|Release configurations. All the functions of FabImage Library are included in the FIL.dll file.
  • Documentation – a directory containing the documentation of FabImage Library, including this document.
  • include – a directory containing all header (.h) files for FabImage Library. Every source code file that uses FabImage Library needs the FIL.h header file (the main header file) to be included.
  • lib – a directory containing static (.lib) libraries ( FIL.lib ) for 32|64-bit applications. The FIL.lib file has to be statically-linked into the program that uses FabImage Library. It acts as an intermediary between the usage of FabImage Library functions and the FIL.dll file. The programmer creating an application does not need to bother about DLL entry points and functions exported from the FIL.dll file. FabImage Library is designed to be easy to use, so one only needs to link the FIL.lib file and can use all the functions from the FIL.dll just as easy as local functions.
  • tools – a directory containing the License Manager tool helping the user to load the license for FabImage Library to the developer's computer.
  • Examples – a directory located in the Public Documents system folder (e.g. C:\Users\Public\Documents\FabImage Library 1.0\Examples on Windows Vista/7) containing simple example solutions using FabImage Library. The examples are a good way of learning, how to use FabImage Library. They can be used as a base for more complicated programs as well. The shortcut to the Examples directory can be found in the Start Menu after the installation of FabImage Library.

Library Architecture

FabImage Library is split into four parts:

  1. FabImage Library - contains all functions for working with images.
  2. Standard Library - contains all auxiliary functions like: file operations, XML editing or mathematical operations.
  3. GenICam Library - contains all GenICam and GigEVision functions.
  4. Third Party Library - contains functions of third-party hardware producers.

The usage of the library is possible only when including one of the following header files:

  • FIL.h
  • STD.h
  • Genicam.h
  • ThirdPartySdk.h

Environment and Paths

FabImage Library uses the environment variable named FIL_PATH1_0 (1_0 stands for the 1.0 version) in the building process. The variable points the directory with the headers and libraries needed in the compile time (.h files and FIL.lib ) and in the run time ( FIL.dll ). Its value is typically set to C:\Program Files (x86)\FabImage\FabImage Library 1.0, but it can differ in other systems.

The projects using FabImage Library should use the value of FIL_PATH1_0 to resolve the locations of the header files and statically-linked FIL.lib file. Using an environment variable containing path makes the application source code more portable between computers. The FIL_PATH1_0 path is typically used in the project settings of the compiler (Configuration Properties | C/C++ | General | Additional Include Directories) to find the header files, settings of the linker (Configuration Properties | Linker | General | Additional Library Directories) to find the proper version of the FIL.lib and in the configuration of Post-Build Event (Configuration Properties | Build Events | Post-Build Event | Command Line) to copy the proper version of the FIL.dll file to the output directory of the project. All the settings can be viewed in the simple example applications distributed with FabImage Library.

Previous: Getting Started Next: Project Configuration