Getting Started on Linux
Downloading the Sources
Download va from here and unpack it to a comfortable place. Starting from VirtualAwesome/ you will find three main directories. The libs directory holds all the core support libraries also including the actual va library. The addon directory holds additional libraries with non-essential functionality. And the apps directory holds all the example code.
VirtualAwesome/ CMakeLists.txt addons/ vaMice/ vaMultipad/ vaOpencv/ vaTouchkit/ apps/ addonExamples/ exampleMice/ exampleMultipad/ exampleTouchkitSimple/ examples/ exampleKeymouse/ exampleShapes/ exampleWidget/ libs/ va/ osg, freetype, jpeg, png, zlib ...
Generating the Project Files
After downloading the sources you can generate the project files with cmake. This tool comes with a nice cross-platform GUI and is very much self-explanatory. In cases of doubt the following goes through the precise steps necessary.
- Install cmake on your system. All major Linux distributions have packages for it. On Debian-style systems you can do this by typing the following into a terminal, sudo apt-get install cmake-gui. Alternatively you can also download the latest packages from the developers of cmake.
- Run the cmake-gui, enter the two directories at the top (source and build directory). For both enter the path to VirtualAwesome/ where the master CMakeLists.txt file is located. Having them identical results in what is called an in-source build. (Out-of-source builds can cause issues with loading resource files during runtime, something to keep in mind)
- Press the Configure button -- cmake will ask you for the kind of project files to generate -- select code::blocks.
- Press the Configure button again.
- Press the Generate button.
Building the Example Apps
At this point there is a virtualAwesome.cbp project file in VirtualAwesome/. After firing up the project in code::blocks simply select an example from the Build Target drop-down and build-run it. If you are getting build errors first make sure you have all the required dependency packages installed otherwise let up know on the Discussion List.
va comes with addons that use firewire cameras (vaTouchkit). Not all Linux distros have correctly setup firewire subsystems. Specifically permissions tend to be wack on Ubuntu. See the FirewireCamsOnLinux notes.