Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Qt5 dependency on Kinetic - Cannot build with Qt4 #1369

Closed
theobslhc opened this issue Apr 24, 2019 · 2 comments
Closed

Qt5 dependency on Kinetic - Cannot build with Qt4 #1369

theobslhc opened this issue Apr 24, 2019 · 2 comments

Comments

@theobslhc
Copy link

rviz will not build with Qt4 on branch kinetic-devel :

.../rviz/src/rviz/visualization_frame.cpp:1253:66: error: ‘FindDirectChildrenOnly’ is not a member of ‘Qt’
   QList<QTabBar *> tab_bars = findChildren<QTabBar *>(QString(), Qt::FindDirectChildrenOnly);

Merged PR #1168 relies on Qt::FindDirectChildrenOnly to get a list of all QTabBar children of VisualizationFrame, which is a flag to QObject::findChild() that was introduced in Qt5.

See visualization_frame.cpp, line 1253 :

QList<QTabBar *> tab_bars = findChildren<QTabBar *>(QString(), Qt::FindDirectChildrenOnly);

Qt4 does not seem to provide an "easy" equivalent of this flag. The subject of reproducing its behaviour has been covered here, but proposed solutions rely on the children's object names, which I am not sure will be reliable in the context of rviz.

Your environment

  • OS Version: e.g. Ubuntu 16.04
  • ROS Distro: Kinetic
  • RViz, Qt, OGRE, OpenGl version as printed by rviz:
    no build, Qt 4.8.7
    
@wjwwood
Copy link
Member

wjwwood commented Apr 24, 2019

Technically Kinetic requires Qt5:

http://www.ros.org/reps/rep-0003.html#kinetic-kame-may-2016-may-2021

Though we had tried to be friendly to Qt4 in that release, it's technically unsupported. So I can't say I'm surprised that it's broken.

@theobslhc
Copy link
Author

@wjwwood thanks for your feedback. I had missed that detail.
I will try to investigate the issue myself and submit a PR if time allows, for the sake of Qt4-friendliness :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants