-
Notifications
You must be signed in to change notification settings - Fork 466
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
Segfault on launch with Debian build of Rviz #1026
Comments
I think that's right. Some dependency of rviz's must be pulling in Qt4. What version of rviz is it? |
Here's the version information:
I'm not sure what could be pulling in Qt4 ... any ideas? |
Smoking gun?
EDIT: Actually, |
The latest version of rviz (which it appears you have) does not depend on anyone of those packages. Maybe you have an rviz plugin that does though? But I wouldn't have pinned it on that since your rviz executable is linked against qt4 directly. |
(to clarify my above comment edit:)
|
Ah, I removed that dependency on OpenCV here: #1009 But I haven't released that yet. Sorry. I'll try to get a release out this week. |
Ah, excellent! Thanks. |
Was this solved? I can't run actual rviz on actual debian jessie...
|
It hasn't been released yet. It will probably be after ROSCon before I'll have time to catch up on rviz and make a new release. |
Work-around: |
@mryellow Thanks for that workaround. For it to work, do I need to rebuild rviz using catkin? If so, are there instructions somewhere on how to do that? The build instructions on http://wiki.ros.org/rviz/UserGuide#Install_or_build_rviz give rosmake commands which do not take in to account the catkin config. |
@pcarleton Yeah that's with a source install where you can force everything (other packages using those flags) to use QT4. Here is a semi-unattended install script I use (on Debian), along with the ROS source docs it might help show how the whole process works. Manually you don't need to specify dirs and everything like that script does as you're running from those paths already. Note the overlay workspace is a specific robot, replace packages in https://github.com/mryellow/debian-scripts/blob/master/ros-kinetic.sh http://wiki.ros.org/kinetic/Installation/Source |
@pcarleton Oh I probably have a fork or two coded into those dependencies in Best bet is probably using the generator to create your own desktop rosinstall file. |
@wjwwood Can you tell us when the release will be done? I did a fresh Debian 8.6 and ROS installation (from the official repositories, not from source) today and it's still not working |
No, but I was working on it yesterday and I'll probably work on it today too. By "official repositories" you mean packages.ros.org or the official Debian repositories? |
I installed following the instructions on http://wiki.ros.org/kinetic/Installation/Debian, so the official Debian repositories. I installed the ros-kinetic-desktop-full package. |
@jdbug1 no, actually that wiki uses the packages.ros.org repository. I think we agree, but I would consider the "official Debian repositories" to be packages.debian.org. If you installed |
Closing since the released version of rviz no longer has the OpenCV dependency. |
…ualization#1030) * Fix memory leak in effort_visual.cpp. When shutting down, we were forgetting to free the effort_arrow and effort_circle memory. Switch to using unique pointers there, which will take care of this for us. * Make sure to initialize ScrewVisual member variables. Otherwise you can run into situations where the user forgets to call one of the 'set' methods, and we now access uninitialized memory. * Make sure to set the frame orientation and position in effort visual. As the API currently stands, it is very easy to access uninitialized memory by forgetting to call setFramePosition() and setFrameOrientation() before calling setEffort(). Fix at least this bit in the tests, and clean things up a little so this is easier to read. * Change EffortVisual constructor to take width and scale. That way we ensure that these will always be set. * Revamp adding things to the EffortVisual class during setEffort. This is in an attempt to make sure we don't access uninitialized memory. It is a little complicated because it is possible for the user to have set some of the information before the setEffort() call, and we don't want to forget that. So when setEffort() is called, we use the already set values if they are available. If they aren't, we use the identity. On disable, we only erase the effort_arrow and effort_circle, again so we don't forget information the user may have otherwise provided us. With all of this in place, it isn't possible to call setEffort anymore and access uninitialized memory. Signed-off-by: Chris Lalancette <clalancette@gmail.com> (cherry picked from commit ebf54352606df837715bc4992c502449a1596efa) Co-authored-by: Chris Lalancette <clalancette@gmail.com>
(Note: I'm not sure where to file this bug ... perhaps there's a place that's appropriate for packaging bugs?)
I installed the
ros-kinetic-rviz
package, and I get the following segfault:It looks like it could be a Qt-related problem. Here are the libraries the linker finds:
... so I expect there's a problem with Rviz being linked against both Qt4 and Qt5?
I'm running an freshly-installed and up-to-date Debian 8 Jessie system. I followed the ROS installation instructions here: http://wiki.ros.org/action/fullsearch/Installation/Debian
The text was updated successfully, but these errors were encountered: