Qt4 errors when compiling rgbdslam_v2 on the Jetson TK1

asked 2016-09-09 06:56:01 -0500

Gru gravatar image

I am trying to make RGBDSLAM_v2 running on my Jetson Tk1. My problems are related to QT4:

After setting up my new Jetson Tk1 board, rgbdslam was able to find the preinstalled Qt4 version. Unfortunately I run in problems since certain typedefs in the QT4 package compile as 'float' in ARM and RGBDSLAM_V2 depends on these typedefs being 'double'. This leads to my first question:

1. How to correctly compile QT4 from source in order to avoid the conflict between the OpenGL type definitions errors (see below).

In my proceeding so far I have been considering all the solution approaches given in different existing threads. However, with the suggested options it has not been possible to make rgbdslam running.
This is what I have done until now:

  1. Installed rgbdslam following: ( https://github.com/felixendres/rgbdsl... )
  2. After trying catkin_make I encounted the already known OpenGL type definitions error as stated here: http://answers.ros.org/question/23222... and here http://answers.ros.org/question/23400... and here: https://github.com/felixendres/rgbdsl...

  3. I tried to recompile QT4 for ARM with the typedef 'qreal' set to 'double' using the following instructions. https://github.com/kbalisciano/qt and https://simplifyrobotics.wordpress.co...
    When trying to recompile QT4 as described (using configure with -DQT_COORD_TYPE=double) I got this error:
    https://bugreports.qt.io/browse/QTBUG...
    and fixed it by changing source code in qtbase/src/gui/paining/qdrawhelper_p.h (explicit cast to float) as mentioned under the same link.

  4. After successful recompilation of QT4 I tried to make rgbdslam again resulting in the same type defintion error as before.

  5. I cleaned my system by first deleting QT4 and then reinstalling it via the apt-get command:

    sudo apt-get install libqt4-*

    This in turn causes another problem to occur, which brings me to my second question:

2. Which exact version of QT4 works for rgbdslam_v2?

Now when trying to catkin_make rgbdslam_v2 I get this compilation error:

COULD NOT find Qt4 (missing: QT_MOC_EXECUTABLE QT_RCC_EXECUTABLE QT_UIC_EXECUTABLE) (found version ''4.8.7'')

So at the moment it seems that I am using the wrong QT4 version.

3. Assuming I have installed the correct version of Qt4, what is the correct way to link RGBDSLAM to the new Qt.

System Configuration:
Ubuntu 14.04
ROS Indigo
2GB swap enabled

I am struggling with these issues for a while now and really running out of options ... so any help is highly appreciated.

edit retag flag offensive close merge delete