[Jderobot] Problemas instalación OpenNI2

Juan Navarro Bosgos jnbosgos en gmail.com
Mie Oct 2 10:51:16 CEST 2013


Hola de nuevo,

en Ubuntu 12.04 i386 ya he conseguido solucionar el problema con el make de
OpenNi v2.2, ejecutando:

$ make CXX='g++ -lrt -lpthread'


y utilizando g++ 4.6.3 .

Aclaración: '-lrt' es para solucionar el problema con "error: undefined
reference to 'clock_gettime' ", y '-lpthread' para solucionar los problemas
con "error: undefined reference to 'pthread_XXX' ".


Saludos,

Juan


El 1 de octubre de 2013 22:39, Juan Navarro Bosgos <jnbosgos en gmail.com>escribió:

> Hola,
>
> he probado a crearme una máquina virtual con una instalación limpia de
> Debian Wheezy (7.1) con arquitectura i386, y siguiendo el manual<http://jderobot.org/Manual-5>,
> más o menos ya que algunas librerías de OpenGL: 'libglut3 libglut3-dev
> glutg3-dev' y algunas de Gtk: 'libgtkextra-x11-2.0-1
> libgtkextra-x11-2.0-dbg libgtkextra-x11-2.0-dev' no las encuentra en los
> repositorios aunque de momento no me ha dado problema; al llegar al make de OpenNi
> v2.2 <http://jderobot.org/Manual-5#OpenNI_and_NITE> que me daba problemas
> con las librerías de C++ en Ubuntu 12.04 ahora con Debian Wheezy no los ha
> habido, así que de momento seguiré instalando el resto del entorno en la
> máquina virtual a ver qué tal.
> En Debian Wheezy la versión que he utilizado de g++ es la 4.7.2 . Pero en
> los repositorios de Ubuntu 12.04 (Precise) no está la versión 4.7 de g++
> para ver si así se soluciona el problema con las librerías clock y pthread;
> he probado a buscar en los repositorios con 'aptitude search g++-4.7' y no
> aparece, también he probado con 'update-alternatives --config g++' que
> aparece en el manual, pero me informa que "no hay alternativas para g++".
>
> Un saludo, Juan
>
>
> El 1 de octubre de 2013 10:55, Juan Navarro Bosgos <jnbosgos en gmail.com>escribió:
>
> Hola,
>>
>> la traza mostrada es con g++ 4.6.3; también probé con la 4.4, por si era
>> ese el problema, y la salida era la misma, así que lo he dejado con la 4.6;
>> se me olvidó ponerlo en el correo anterior.
>>
>> Gracias, Juan
>>
>>
>> El 1 de octubre de 2013 10:07, <franciscomiguel.rivas en urjc.es> escribió:
>>
>> Buenas,
>>> ¿que versión de g++ estás utilizando? para openni2 necesitas 4-6 o
>>> superior, si la has cambiado por la 4.4 para compilar el antiguo
>>> entorno de jderobot necesitas volverlo a cambiar por la mas actual.
>>>
>>>
>>> un saludo,
>>> Fran.
>>>
>>> "Juan Navarro Bosgos" <jnbosgos en gmail.com> escribió:
>>>
>>> > Hola,
>>> >
>>> > utilizo Ubuntu 12.04 de 32 bits, tenía una instalación antigua del
>>> entorno
>>> > jderobot, de manera que he desinstalado el driver de Kinect, Nite
>>> v1.5.2.21
>>> > y OpenNI-unstable antiguos mediante los scripts que contenían; y me he
>>> > puesto a actualizar siguiendo la wiki <http://jderobot.org/Manual-5>
>>> pero
>>> > al llegar a la instalación de OpenNI
>>> > v2.2<http://jderobot.org/Manual-5#OpenNI_and_NITE>y ejecutar el make
>>> > me han surgido problemas, inicialmente me faltaban
>>> > algunas librerías de las detalladas en su fichero 'README': LibUDEV
>>> > y GraphViz, pero ahora me salen los errores, mostrados más adelante,
>>> con
>>> > referencias a las librerías de C++: clock y pthread. Con la librería
>>> > pthread he tenido problemas similares en el pasado y los solucionaba
>>> > añadiendo el modificador '-lpthread' en la línea 'set( CMAKE_CXX_FLAGS
>>> > ...)' del fichero 'CMakeLists.txt' correspondiente, pero en el caso del
>>> > repositorio GitHub de OpenNI2 no encuentro dicho fichero. ¿Alguien sabe
>>> > como solucionar estos problemas? o ¿Se pude instalar OpenNi de alguna
>>> otra
>>> > forma?
>>> >
>>> > Salida de la ejecución del make, tras ejecutarlo por segunda vez para
>>> que
>>> > no sea tan extensa, por eso en las primeras carpetas no hace nada al ya
>>> > tenerlas preparadas:
>>> >
>>> > jnbosgos en teleko:~/pfc/extras/OpenNI2$ make
>>> > make -C ThirdParty/PSCommon/XnLib/Source
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/ThirdParty/PSCommon/XnLib/Source»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/ThirdParty/PSCommon/XnLib/Source»
>>> > make -C Source/Core
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Core»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Core»
>>> > make -C Source/DepthUtils
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/DepthUtils»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/DepthUtils»
>>> > make -C Source/Drivers/DummyDevice
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/DummyDevice»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/DummyDevice»
>>> > make -C Source/Drivers/PS1080
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PS1080»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PS1080»
>>> > make -C Source/Drivers/PSLink
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PSLink»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PSLink»
>>> > make -C Source/Drivers/OniFile
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/OniFile»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/OniFile»
>>> > make -C Wrappers/java/OpenNI.jni
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Wrappers/java/OpenNI.jni»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Wrappers/java/OpenNI.jni»
>>> > make -C Wrappers/java/OpenNI.java
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Wrappers/java/OpenNI.java»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Wrappers/java/OpenNI.java»
>>> > make -C Source/Drivers/PS1080/PS1080Console
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PS1080/PS1080Console»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PS1080/PS1080Console»
>>> > make -C Source/Drivers/PSLink/PSLinkConsole
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PSLink/PSLinkConsole»
>>> > make[1]: No se hace nada para «all».
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Drivers/PSLink/PSLinkConsole»
>>> > make -C Source/Tools/NiViewer
>>> > make[1]: se ingresa al directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Tools/NiViewer»
>>> > g++ -o ../../../Bin/x86-Release/NiViewer
>>> > ./../../../Bin/Intermediate/x86-Release/NiViewer/Device.o
>>> > ./../../../Bin/Intermediate/x86-Release/NiViewer/Draw.o
>>> > ./../../../Bin/Intermediate/x86-Release/NiViewer/Keyboard.o
>>> > ./../../../Bin/Intermediate/x86-Release/NiViewer/Menu.o
>>> > ./../../../Bin/Intermediate/x86-Release/NiViewer/MouseInput.o
>>> > ./../../../Bin/Intermediate/x86-Release/NiViewer/NiViewer.o
>>> > ./../../../Bin/Intermediate/x86-Release/NiViewer/Capture.o
>>> > -L../../../ThirdParty/PSCommon/XnLib/Bin/x86-Release
>>> > -L../../../Bin/x86-Release -lglut -lGL -lOpenNI2 -lXnLib -Wl,-rpath ./
>>> >
>>> ../../../ThirdParty/PSCommon/XnLib/Bin/x86-Release/libXnLib.a(XnLinuxTime.o):XnLinuxTime.cpp:function
>>> > xnOSGetMonoTime: error: undefined reference to 'clock_gettime'
>>> >
>>> ../../../ThirdParty/PSCommon/XnLib/Bin/x86-Release/libXnLib.a(XnLinuxMutex.o):XnLinuxMutex.cpp:function
>>> > xnOSUnNamedMutexCreate(XnMutex*): error: undefined reference to
>>> > 'pthread_mutexattr_init'
>>> >
>>> ../../../ThirdParty/PSCommon/XnLib/Bin/x86-Release/libXnLib.a(XnLinuxMutex.o):XnLinuxMutex.cpp:function
>>> > xnOSUnNamedMutexCreate(XnMutex*): error: undefined reference to
>>> > 'pthread_mutexattr_settype'
>>> >
>>> ../../../ThirdParty/PSCommon/XnLib/Bin/x86-Release/libXnLib.a(XnLinuxMutex.o):XnLinuxMutex.cpp:function
>>> > xnOSUnNamedMutexCreate(XnMutex*): error: undefined reference to
>>> > 'pthread_mutexattr_destroy'
>>> >
>>> ../../../ThirdParty/PSCommon/XnLib/Bin/x86-Release/libXnLib.a(XnLinuxMutex.o):XnLinuxMutex.cpp:function
>>> > xnOSLockMutex: error: undefined reference to 'pthread_mutex_timedlock'
>>> > collect2: ld devolvió el estado de salida 1
>>> > make[1]: *** [../../../Bin/x86-Release/NiViewer] Error 1
>>> > make[1]: se sale del directorio
>>> > «/home/jnbosgos/pfc/extras/OpenNI2/Source/Tools/NiViewer»
>>> > make: *** [Source/Tools/NiViewer] Error 2
>>> >
>>> >
>>> > Un saludo, Juan
>>> >
>>>
>>>
>>>
>>> ------------------------------------------------------------------
>>> Laboratorio de Análisis del Movimiento, Biomecánica, Ergonomía y
>>> Control Motor (LAMBECOM).
>>> Departamento de Fisioterapia, Terapia Ocupacional, Rehabilitación y
>>> Medicina Física.
>>> Universidad Rey Juan Carlos (URJC).
>>> _______________________________________________
>>> Jde-developers mailing list
>>> Jde-developers en gsyc.es
>>> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers
>>>
>>
>>
>>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://gsyc.escet.urjc.es/pipermail/jde-developers/attachments/20131002/73e11c0d/attachment-0001.htm 


More information about the Jde-developers mailing list