Common Vision Blox on Linux x64

<< Click to Display Table of Contents >>

Navigation:  Programming with Common Vision Blox > Multi-Platform >

Common Vision Blox on Linux x64

 

Directory Structure

 

When porting CVB to the Linux platform, one of the goals was to integrate CVB as harmonically as possible into this operating system, that looks and feels a lot different from Windows.

So instead of re-using the directory tree that is built on the Windows platforms we decided to come up with a new structure that follows the File Hierarchy Standard v. 2.3.

 

Therefore, on a Linux system the CVB installation is located in the folder /opt/ and its (packet dependant) subfolders:

Folder

Content

/opt/

base folder of the CVB installation; empty by default except for the subdirectories listed below

/opt/cvb/bin

folder for standalone applications (e.g. configuration utilities, GenICam Browser) and compiled tutorials

/opt/cvb/doc

contains the documentation for CVB in compiled HTML format (requires a tool like kchmviewer, gnochm or xchm to read)

/opt/cvb/drivers

location for CVB’s video interface drivers

/opt/cvb/include

contains the C++ header files for CVB (only C++ is supported on the Linux platform); add this location to your compiler’s include paths

/opt/cvb/lib

folder holding the shared object files for CVB; this location has been added to the system’s linker cache through the file /etc/ld.so.conf/libcvb.conf and should be added to your compiler’s linker paths

/opt/cvb/tutorial

holds the source code of the tutorial applications that ship with CVB for Linux

 

To make version switches easier, a symbolic link /opt/cvb pointing to /opt/cvb-{MM.mm.sss} is added to the /opt directory.

All environment variables and references like the dynamic linker cache use this symlink.

Whenever CVB is updated in the future, you may simply bend the symbolic link to the newer version.

 

In addition to the core CVB installation directory there are a few more folders that contain dependencies or configuration data:

Folder

Content

/etc/opt/cvb

location for driver configuration files and license information files

/var/opt/cvb

folder hierarchy of the GenICam library that is being used by CVB

 

Differences Between CVB DLLs and CVB SOs

 

The shared object files shipped with CVB for Linux contain almost the same set of functions and (more importantly) use the same function interface as the DLLs on the Windows platforms.

Where functions have been left out, this happened simply because the necessary underlying infrastructure was not available on Linux (for example the function ImageToDC expects a Windows device context handle and is therefore not available).