GithubHelp home page GithubHelp logo

qt_ros's Introduction

Table of Contents

Qt-Ros

Ros Documentation and Tutorials: http://wiki.ros.org/qt_create

Overview

Includes templates and create scripts for quickly developing qt-based ros packages.

  • catkin_create_qt_pkg for quickly templating a qt-ros package.
  • Includes a master chooser as a docking element.

Status

This package is and has been in maintenance mode for quite some time. Feel free to fork it and iterate on it if it serves a useful purpose for you.

Future Work Ideas

  • Check if we still need cmake support for mingw's static builds.
  • Support more templates.
  • Spin off into a separate python module.
  • QDesigner elements.

qt_ros's People

Contributors

progtologist avatar stonier avatar tones29 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qt_ros's Issues

Error adding class to qt_ros

Hello, I added the C++ class to the template of qt_ros, and I get an error:
error: base class has incomplete type
qobject.h:62:7: note: forward declaration of'QThread'

I would like to ask how to solve it. I would not appreciate it if you can answer it.
image

for ROS-Lunar

Hello, i want to use qt_ros on ROS lunar, but there is no repository for kinetic or lunar. How can i do it?
thanks in advance!

ros-hydro-qt-create package breaks workspace builds

The error message is as follows:

CMake Error at /home/roehling/ros/build/catkin_generated/order_packages.cmake:2 (message):
  Invalid package manifest
  /opt/ros/hydro/lib/python2.7/dist-packages/qt_create/templates/qt-ros/package.xml":
  Package name "%(package)s does not follow naming conventions

  Invalid email %(author)[email protected]" for person "%(author)s""
Call Stack (most recent call first):
  /opt/ros/hydro/share/catkin/cmake/catkin_workspace.cmake:36 (include)
  toplevel.cmake:63 (catkin_workspace)
  CMakeLists.txt:21 (include)


-- Configuring incomplete, errors occurred!

The problem is that the templates folder contains a malformed package.xml, which is picked up by the build system. Possible workarounds:

  • a CATKIN_IGNORE file put into the /opt/ros/hydro/lib/python2.7/dist-packages/qt_create/templates folder
  • renaming the templated package.xml to e.g. package.xml.in, so it is no longer processed by catkin

catkin_create_qt_project creates wrong package.xml if deps given

If i run catkin_create_qt_project my_project cv_brigde sensor_msgs it adds to package.xml for deps:

<depend package="cv_brigde"/>
<depend package="sensor_msgs"/>

rather than

<build_depend>cv_brigde</build_depend>
<build_depend>sensor_msgs</build_depend>
<run_depend>cv_brigde</run_depend>
<run_depend>sensor_msgs</run_depend>

I am under ros hydro with ubuntu 12.04 64 bit

release kinetic version?

Hi Daniel,

Do you have a plan to release kinetic version. I hope to see this on ROS kinetic version. :)

ROS Noetic support?

Are you planning to update this package to support the ROS Noetic version? There might need slight modifications to python files as Noetic uses python3.

Publish repo

Publish repo to ros-users (wait for the name change).

catkin_create_qt_project creates wrong package.xml if deps given

If i run catkin_create_qt_project my_project cv_brigde sensor_msgs it adds to package.xml for deps:

rather than

<build_depend>cv_brigde</build_depend>
<build_depend>sensor_msgs</build_depend>
<run_depend>cv_brigde</run_depend>
<run_depend>sensor_msgs</run_depend>

I am under ros hydro with ubuntu 12.04 64 bit

Usage on ROS lunar

Hello. Is that possible to use qt_ros in ROS lunar? If so, how can I do it?

Thanks in advance.

How to test the GUI

Hey there, I was wondering if you know a way to test the gui. From what I can tell QTestLib is the framework that's used the most to test a qt gui. But what I can figure out is how I can use this with a project created with catkin_create_qt_pkg . Do you know the steps to do so, or do you have an example of this? If not maybe you know a way to test the ui using a different framework of some sort?

Using qwt with this package

What do I have to do to use qwt with your package? I have a gui up and running and everything works except the qwt compass. I was getting a "No such file or directory" error for qwt_compass.h; I fixed this by adding the entire path to the file. Then I was getting an error about "slots" and "signals" in one of the qwt_compass dependencies; this was fixed by changing "slots" to "Q_SLOTS" AND "signals" to "Q_SIGNALS" in that file. Now I get undefined reference errors.
This may not be the place for this, but I have looked everywhere. I even have an open question on ros answers: http://answers.ros.org/question/211846/using-qwt-with-qt_ros/
Any help would be appreciated.

edit: Ok, It started to work magically. Here is what I did: In ui_main_window.h change "#include qwtcompass.h" to "#include qwt-qt4/qwt_compass.h". This change has to be repeated every time the .ui file is altered, for now. In qwt_abstract_scale_draw.h the lines "slots" and "signals" must be changed to "Q_SLOTS" and "Q_SIGNALS" respectively. In CMakeLists.txt, "${Qwt_LIBRARIES}" must be added to the list of "target_link_libraries()".

Roll debs

Get debs rolled for this stack after publishing.

Unable to locate package ros-kinetic-qt-create

Hello,

I am running ubuntu 16 with ros kinetic. I am not able to install the package ros-kinetic-qt-create.
Auto complete only finds the following:

dan@dan-Precision-7730:~/tm_ws/src$ sudo apt-get install ros-kinetic-q
ros-kinetic-qt-dotgraph       ros-kinetic-qt-gui-py-common
ros-kinetic-qt-gui            ros-kinetic-qwt-dependency
ros-kinetic-qt-gui-cpp  

apt search qt-create outputs this:

dan@dan-Precision-7730:~/tm_ws/src$ apt search qt-create
Sorting... Done
Full Text Search... Done
ros-indigo-qt-create/trusty 0.2.9-0trusty-20190604-061638-0800 amd64
 Provides templates and scripts for creating qt-ros packages (similar to roscreate-pkg).

I have also run "sudo apt update" and "sudo apt upgrade", but it didn't help.

Any idea?

Thanks!

catkin_make throws error.

Just tried to build an empty test package and catkin_make failed.

ROS Version: Kinetic
OS: Ubuntu 16.04
qt_ros version (number found in the package.xml): 0.2.9

Steps to produce problem:

cd ~/catkin_ws/src
catkin_create_qt_pkg test_qt
cd ~/catkin_ws && catkin_make

Error output from catkin_make:

usr/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN"
test_qt/CMakeFiles/test_qt.dir/build.make:72: recipe for target 'test_qt/include/test_qt/moc_qnode.cxx' failed
make[2]: *** [test_qt/include/test_qt/moc_qnode.cxx] Error 1
make[2]: *** Waiting for unfinished jobs....
usr/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN"
test_qt/CMakeFiles/test_qt.dir/build.make:77: recipe for target 'test_qt/include/test_qt/moc_main_window.cxx' failed
make[2]: *** [test_qt/include/test_qt/moc_main_window.cxx] Error 1
CMakeFiles/Makefile2:3131: recipe for target 'test_qt/CMakeFiles/test_qt.dir/all' failed
make[1]: *** [test_qt/CMakeFiles/test_qt.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs....
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2
Invoking "make -j8 -l8" failed

rosdep broken

In groovy on precise.
Deb rolling with latest code can solve this problem.

$ rosdep check -a
System dependencies have not been satisified:
apt     texlive-fonts-extra
ERROR[qt_tutorials]: Cannot locate rosdep definition for [qt4]
     rosdep key : qt4
     OS name    : ubuntu
     OS version : precise
     Data: <no data>

How to set the project find qt59's modules?

Ubuntu 16.04,ros kinetic,I installed qt59 at /opt/qt59
I created a project with 'catkin_create_qt_pkg'command ,then the CMakeLists file is build with QT4,which from "/usr/include/qt4",I change the CMakeLists file to qt5,like follow sentences:

cmake_minimum_required(VERSION 2.8.0)
project(test1)
set(CMAKE_INCLUDE_CURRENT_DIR ON)#added necessary
##############################################################################
# Catkin
##############################################################################

# qt_build provides the qt cmake glue, roscpp the comms for a default talker
find_package(catkin REQUIRED COMPONENTS roscpp)
find_package(Qt5 REQUIRED Core Widgets)#added
set(QT_LIBRARIES Qt5::Widgets)#added
include_directories(${catkin_INCLUDE_DIRS})

# Use this to define what the package will export (e.g. libs, headers).
# Since the default here is to produce only a binary, we don't worry about
# exporting anything. 
catkin_package()
##############################################################################
# Qt Environment
##############################################################################
# this comes from qt_build's qt-ros.cmake which is automatically 
# included via the dependency call in package.xml
#rosbuild_prepare_qt4(QtCore QtGui) # Add the appropriate components to the component list here
##############################################################################
# Sections
##############################################################################
file(GLOB QT_FORMS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ui/*.ui)
file(GLOB QT_RESOURCES RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} resources/*.qrc)
file(GLOB_RECURSE QT_MOC RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} FOLLOW_SYMLINKS include/test1/*.hpp)

QT5_ADD_RESOURCES(QT_RESOURCES_CPP ${QT_RESOURCES})
QT5_WRAP_UI(QT_FORMS_HPP ${QT_FORMS})
QT5_WRAP_CPP(QT_MOC_HPP ${QT_MOC}) 

then I find that the Qt modules path changed to "/usr/lib/x86_64-linux-gnu/qt5",still it wasn't from qt59 (/opt/qt59),how could I change the CMakeLists file to make cmake find qt modules from /opt/qt59?
I have searched for several days ,tried like change set(CMAKE_PREFIX_PATH /opt/qt59)and so on,but all that doesn't work,so I 'm here looking for help from you.
I do appreciate if you could give me some advices about how to change the CMakeLists file to make it find Qt modules from the set path "/opt/qt59".

After latest Hydro updates, catkin_make fales on /opt/ros/hydro/lib/python2.7/dist-packages/qt_create/templates/qt-ros/package.xml

After installing latest updates for Hydro (on 12.04, x64), all my catkin workspaces failed to compile. Even after rebooting, reinstalling all ros packages, creating new ws, etc.

Please also see my question and the discussion here:
http://answers.ros.org/question/174736/since-updating-ros-a-few-hours-ago-roscatkin-is-broken/

It turns out that a CATKIN_IGNORE file was indeed not present under /opt/ros/hydro/lib/python2.7/dist-packages/qt_create/templates/qt-ros/, creating it solved the problem for me. Is this a qt_ros issue? Or a catkin, or some other issue?

Kind regards,
Koen

Python module

Spin off into a separate module.

This can only happen if the supporting cmake becomes redundant (quite likely when cmake upgrades as its supporting mingw magic that will be included in a future release).

Parse error at "BOOST_JOIN" again!

I install ros-kinetic-qt-ros and get an error when compile the package building with catkin_create_qt_pkg

usr/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN"
zjl/testgui/CMakeFiles/testgui.dir/build.make:72: recipe for target 'zjl/testgui/include/testgui/moc_qnode.cxx' failed
make[2]: *** [zjl/testgui/include/testgui/moc_qnode.cxx] Error 1
make[2]: *** 正在等待未完成的任务....
usr/include/boost/type_traits/detail/has_binary_operator.hp:50: Parse error at "BOOST_JOIN"
zjl/testgui/CMakeFiles/testgui.dir/build.make:77: recipe for target 'zjl/testgui/include/testgui/moc_main_window.cxx' failed
make[2]: *** [zjl/testgui/include/testgui/moc_main_window.cxx] Error 1
CMakeFiles/Makefile2:12473: recipe for target 'zjl/testgui/CMakeFiles/testgui.dir/all' failed
make[1]: *** [zjl/testgui/CMakeFiles/testgui.dir/all] Error 2
Makefile:138: recipe for target 'all' failed
make: *** [all] Error 2

I know this error was happened in #8 3 years ago but it comes back now, could any one help?

ROS Kinetic catkin_make error

catkin_create_qt_pkg qtpkg Runs fine.

After catkin_make:
CMake Warning at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:76 (find_package):
Could not find a package configuration file provided by "qt_build" with any
of the following names:

qt_buildConfig.cmake
qt_build-config.cmake

Add the installation prefix of "qt_build" to CMAKE_PREFIX_PATH or set
"qt_build_DIR" to a directory containing one of the above files. If
"qt_build" provides a separate development package or SDK, be sure it has
been installed.
Call Stack (most recent call first):
qtpkg/CMakeLists.txt:13 (find_package)

-- Could not find the required component 'qt_build'. The following CMake error indicates that you either need to install the package with the same name or change your environment so that it can be found.
CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
Could not find a package configuration file provided by "qt_build" with any
of the following names:

qt_buildConfig.cmake
qt_build-config.cmake

Add the installation prefix of "qt_build" to CMAKE_PREFIX_PATH or set
"qt_build_DIR" to a directory containing one of the above files. If
"qt_build" provides a separate development package or SDK, be sure it has
been installed.
Call Stack (most recent call first):
qtpkg/CMakeLists.txt:13 (find_package)

-- Configuring incomplete, errors occurred!
See also "/home/tim/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/tim/catkin_ws/build/CMakeFiles/CMakeError.log".
Makefile:318: recipe for target 'cmake_check_build_system' failed
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.