Special setup information for Linux systems

(valid for version 1.1.x)

SikuliX
internally uses OpenCV to support the image related features and Tesseract for the text features.

On Linux/Unix systems one has to provide OpenCV 2.4+ and Tesseract 3.0.2+.
Additionally the packages wmctrl and xdotool are needed, which is used to implement the app related features.

On Linux systems based on the Debian package system (Debian, Ubuntu, ...) using the apt tools (apt-get to install a package) should do the job. On other Linux Systems (Fedora, RedHat, ...) you have to use the appropriate package manager, which in many cases should then be yum.
To prepare for the inline build of libVisionProxy.so you have to take care, that at least the following libraries are available:
  • libopencv_core.so.2.4
  • libopencv_imgproc.so.2.4
  • libopencv_highgui.so.2.4
  • libtesseract.so.3
... and they must be listed in the loader cache (check with ldconfig -p)
... and they must not have any unresolved items (check with ldd -r libsomething.so)
... and it is not needed to install any dev/develop packages, just the libs is sufficient.
For more information read the docs for the respective system and/or package.

During setup the availability and usability of these libraries is checked together with the usability of the bundled or provided native library libVisionProxy.so.

So it is ok, to just run setup and look at the results you get: It either works or you have to correct something.

Case 1:
The bundled libraries are checked positive (should work): be happy.
These libraries are built on the latest LTS versions of Ubuntu (currently 14.04).

Case 2:
If you know, what you are doing, you might provide the ready built libraries before starting setup.
Setup will detect and use artifacts found in the libs folder in the setup folder, but they might be checked negative (see case 3).

Case 3:
Neither the bundled nor the provided libraries are checked positive (not useable on this system): Setup will offer the possibility to build on the fly. Setup will tell you about the missing prerequisites.

The inline build will create a folder Build in the setup folder, that contains the sources, include files not present on your system, the created build script and the resulting libVisionProxy.so, that was already incorporated into the resulting jars.
In case of errors and other oddities, you might inspect the Build folder, to find out how to fix.
Suggestions for improvements are welcome.

Special information on libJXGrabKey.so
At least on Ubuntu 14.04 ldd -r reports unresolved symbols pthread… It seems, that this can be ignored, since JXGrabKey works.
If you get problems, that are related to JXGrabKey, you have to build from the sources after having downloaded the package from here or other places and provide the ready built library before setup in the folder libs.