Hardware:
A linux compatible webcam (USB or a Firewire)

Software:
Fedora Core 9 (i386)
Also compatible with Fedora Core 10 (i386)

Installation instructions:

  1. I’m asuming you have a clean installation of Fedora Core 9 (with Software Development packages) installed.
  2. First install all dependencies:
    # su -
    # yum install cmake svn opencv opencv-devel freeglut freeglut-devel fftw2 fftw2-devel libXmu libXmu-devel
    # exit
  3. Now to install osc, checkout the latest version on the SVN:
    # cd ~
    # mkdir multitouch
    # cd multitouch
    # mkdir oscpack

    # cd oscpack
    # svn co https://www.smartelectronix.com:9000/repos/osc/oscpack/trunk/ .
    (or you could get the source oscpack_1_0_2.zip)Unfortuntately rev. 76 of oscpack is not compatible with gcc 4.3. Before running make it is required to make some fixes in the sourcecode.

    Use your favorite editor and edit the following files:

    tests/OscUnitTests.cpp
    - add #include <cstring>

    osc/OscPrintReceivedElements.cpp
    - add #include <cstring>

    tests/OscSendTests.cpp
    - add #include <cstdlib>

    tests/OscReceiveTest.cpp
    - add #include <cstdlib>

    examples/OscDump.cpp
    - add #include <cstring>
    - add #include <cstdlib>

    Next type the following commands:

    # cd oscpack/
    # make
    #
    su -
    # cd /home/username/multitouch/oscpack
    # make install
    # exit

  4. Now compile touchlib:
    # cd /home/username/multitouch
    #
    mkdir touchlib
    #
    cd touchlib
    #
    svn checkout http://touchlib.googlecode.com/svn/trunk/ .
    #
    cmake . (or “ccmake .” if you want a GUI)
    #
    make

  5. Touchlib should now be ready to use.

More information:
http://gcc.gnu.org/gcc-4.3/porting_to.html

Known bugs:
Due a problem with the OpenCV library in Linux, Touchlib might crash after a few minutes.

A fix for rev.393 is available here.
A mirror to the file: Touchlib race condition fix rev.393

(old)
A fix for rev.90 is available in here.
A mirror to the file: Touchlib race condition fix rev.90

(Optional) Import the touchlib project in Eclipse (3.4+ Ganymeade):

  1. Open up a console and go to the touchlib directory
  2. Type:
    # cmake -G”Eclipse CDT4 - Unix Makefiles” .
  3. Two new files should be added to the directory (.project and .cproject).
  4. Launch Eclipse.
  5. Import the project using File -> Import…
  6. Select General -> Existing projects into workspace.
  7. Browse to your touchlib directory.
  8. After selecting the directory, the project should be visible in the overview.
  9. Keep “Copy projects into workspace” unchecked.
  10. Done!