Compiling and Installing HandVu on Linux

HandVu

On this tutorial we will cover the compilation from sources of HandVu beta 3 and its compilation and installation on Ubuntu 10.04 LTS (Lucid Lynx).

1. Download the package

$ wget http://www.movesinstitute.org/~kolsch/HandVu/handvu-beta3.tar.gz

2. Uncompress the package

$ gunzip -c handvu-beta3.tar.gz | tar xopf -

3. Enter the directory

$ cd handvu-beta3

4. Configure for make

$ ./configure

5. Make

If we execute make command some errors will appear. These errors could be:


error: 'ULONG_LONG_MAX' was not declared in this scope
error: 'INT_MAX' was not declared in this scope

error: 'alloca' was not declared in this scope
error: 'strlen' was not declared in this scope
error: 'strcpy' was not declared in this scope
error: 'strtok' was not declared in this scope
error: 'strrchr' was not declared in this scope

error: 'atof' was not declared in this scope

error: 'memset' was not declared in this scope

So let’s add some lines of code

to cubicles/IntegralFeatures.cpp

#include <alloca.h>
#include <limits.h>

to cubicles/IntegralFeaturesSame.cpp

#include <alloca.h>

to cubicles/CascadeFileParser.yy

#include <string.h>

to cubicles/Scanner.h

#include <limits.h>

to cubicles/IntegralImage.cxx

#include <string.h>

to handvu/Mask.cpp

#include <alloca.h>
#include <stdlib.h>
#include <string.h>

to handvu/FileHandling.cpp

#include <string.h>

on this last file we also need to change a pair of lines, otherwise the following error will appear:


error: invalid conversion from 'const char*' to 'char*'

on handvu/FileHandling.cpp change from this:

char* slashpos = strrchr(path, '/');
char* dotpos = strrchr(path, '.');

to this:

const char* slashpos = strrchr(path, '/');
const char* dotpos = strrchr(path, '.');

Now we can execute make

$ make

6. Intall

$ sudo make install

We are done!

Blessings!

2 pensamientos en “Compiling and Installing HandVu on Linux”

  1. i’ve got this error, could you please help me with this problem please

    /usr/bin/ld: cannot find -lcubicles
    collect2: ld returned 1 exit status
    make: *** [../lib/libhandvu.la] Error 1

    Me gusta

  2. Could you tell me what is wrong with this?:
    steve07@steve07-desktop:~/handvu-beta3$ make
    make all-recursive
    make[1]: se ingresa al directorio «/home/steve07/handvu-beta3»
    Making all in cubicles
    make[2]: se ingresa al directorio «/home/steve07/handvu-beta3/cubicles»
    if /bin/bash ../libtool –tag=CXX –mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT IntegralFeatures.lo -MD -MP -MF “.deps/IntegralFeatures.Tpo” -c -o IntegralFeatures.lo IntegralFeatures.cpp; \
    then mv -f “.deps/IntegralFeatures.Tpo” “.deps/IntegralFeatures.Plo”; else rm -f “.deps/IntegralFeatures.Tpo”; exit 1; fi
    g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT IntegralFeatures.lo -MD -MP -MF .deps/IntegralFeatures.Tpo -c IntegralFeatures.cpp -fPIC -DPIC -o .libs/IntegralFeatures.o
    g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT IntegralFeatures.lo -MD -MP -MF .deps/IntegralFeatures.Tpo -c IntegralFeatures.cpp -o IntegralFeatures.o >/dev/null 2>&1
    if /bin/bash ../libtool –tag=CXX –mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT IntegralFeaturesSame.lo -MD -MP -MF “.deps/IntegralFeaturesSame.Tpo” -c -o IntegralFeaturesSame.lo IntegralFeaturesSame.cpp; \
    then mv -f “.deps/IntegralFeaturesSame.Tpo” “.deps/IntegralFeaturesSame.Plo”; else rm -f “.deps/IntegralFeaturesSame.Tpo”; exit 1; fi
    g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT IntegralFeaturesSame.lo -MD -MP -MF .deps/IntegralFeaturesSame.Tpo -c IntegralFeaturesSame.cpp -fPIC -DPIC -o .libs/IntegralFeaturesSame.o
    g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT IntegralFeaturesSame.lo -MD -MP -MF .deps/IntegralFeaturesSame.Tpo -c IntegralFeaturesSame.cpp -o IntegralFeaturesSame.o >/dev/null 2>&1
    if /bin/bash ../libtool –tag=CXX –mode=compile g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT Classifiers.lo -MD -MP -MF “.deps/Classifiers.Tpo” -c -o Classifiers.lo Classifiers.cpp; \
    then mv -f “.deps/Classifiers.Tpo” “.deps/Classifiers.Plo”; else rm -f “.deps/Classifiers.Tpo”; exit 1; fi
    g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT Classifiers.lo -MD -MP -MF .deps/Classifiers.Tpo -c Classifiers.cpp -fPIC -DPIC -o .libs/Classifiers.o
    g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/local/include/opencv -I/usr/local/include -DTARGET_SYSTEM=\”i686-pc-linux-gnu\” -DIMG_LIB_OPENCV -DII_TYPE_FLOAT -O3 -MT Classifiers.lo -MD -MP -MF .deps/Classifiers.Tpo -c Classifiers.cpp -o Classifiers.o >/dev/null 2>&1
    yacc -d CascadeFileParser.yy
    /bin/bash: yacc: orden no encontrada
    make[2]: *** [CascadeFileParser.cc] Error 127
    make[2]: se sale del directorio «/home/steve07/handvu-beta3/cubicles»
    make[1]: *** [all-recursive] Error 1
    make[1]: se sale del directorio «/home/steve07/handvu-beta3»
    make: *** [all] Error 2
    I await your response. Thank you.

    Me gusta

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s