-
 

qt_metapackages repository

Repository Summary

Checkout URI https://github.com/swri-robotics/qt_metapackages.git
VCS Type git
VCS Version kinetic-devel
Last Updated 2018-10-26
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Packages

Name Version
libqt_concurrent 1.0.1
libqt_core 1.0.1
libqt_dev 1.0.1
libqt_gui 1.0.1
libqt_network 1.0.1
libqt_opengl 1.0.1
libqt_opengl_dev 1.0.1
libqt_svg_dev 1.0.1
libqt_widgets 1.0.1
qt_qmake 1.0.1

README

Qt Metapackages

This repository contains ROS metapackages that are useful for depending on the right version of Qt depending on which distribution of ROS you are using.

Justification

ROS Indigo and earlier use Qt 4, but ROS Kinetic and later on Ubuntu 16.04 and later use Qt 5. It is possible to write your CMakeLists.txt and C++ code in such a way that they are compatible with both versions of Qt, the lack of conditional dependencies in the Catkin package.xml format means that you cannot have a single package.xml file that depends only on Qt 4 when building for ROS Indigo and Qt 5 when building for ROS Kinetic. In some cases, depending on qt_gui_cpp is sufficient, but that may include dependencies you do not want, and there are many Qt libraries that it does not include.

This has lead to many packages with separate branches for Indigo and post-Indigo development in which the only meaningful differences are in the package.xml files, and keeping these branches synchronized is annoying and error-prone.

The metapackages provided by this repository depend on rosdep keys for each platform that in turn depend on the appropriate Qt packages for that platform so that your package can have a single branch that works for every ROS distribution.

Usage

Just depend on the metapackage for the Qt library you want in your package.xml. When running on Ubuntu 14.04 / ROS Indigo, it will transitively depend on the equivalent Qt 4 package. When running in Ubuntu 16.04 / ROS Kinetic or later, it will transitively depend on the equivalent Qt 5 package.

CONTRIBUTING

No CONTRIBUTING.md found.