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

rviz2 segmentation error in OS X #385

Closed
vmayoral opened this issue Mar 17, 2019 · 15 comments
Closed

rviz2 segmentation error in OS X #385

vmayoral opened this issue Mar 17, 2019 · 15 comments
Labels
in review Waiting for review (Kanban column)

Comments

@vmayoral
Copy link
Member

Description

rviz2 fails to launch in OS X Mojave 10.14

Your environment

  • ROS Distro: Crystal patch 2
  • OS Version: OS X Mojave 10.14
  • Source or Binary build? source
  • If source, which git commit or tag? 5.0.0

Behaviour

| => rviz2
[INFO] [rviz2]: Stereo is NOT SUPPORTED
[INFO] [rviz2]: OpenGl version: 2.1 (GLSL 1.2)
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/scripts
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/meshes
[INFO] [rviz2]: Stereo is NOT SUPPORTED
2019-03-17 15:25:36.175 rviz2[13893:5135322] -[OS_dispatch_mach frame]: unrecognized selector sent to instance 0x7fdaebafb630
Illegal instruction: 4

Backtrace or Console output

https://gist.github.com/vmayoral/7eababb372c320f1243c3c4eeb2b7d88

@vmayoral
Copy link
Member Author

For the record, I'm currently trying out the same with ROS 2 Crystal Clemmys - Patch Release 3 compiled from sources.

@vmayoral
Copy link
Member Author

Connects with ros2/ros2#671

@vmayoral
Copy link
Member Author

Fails also with patch 3 release: https://gist.github.com/vmayoral/856524030d27931aee985a3a4ecb9433

@vmayoral
Copy link
Member Author

Interesting thing is that it throws different errors on consecutive launches:

| victor:~/ros2_ws$
| => rviz2
[INFO] [rviz2]: Stereo is NOT SUPPORTED
[INFO] [rviz2]: OpenGl version: 2.1 (GLSL 1.2)
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/scripts
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/meshes
[INFO] [rviz2]: Stereo is NOT SUPPORTED
2019-03-17 19:19:50.387 rviz2[89080:5619313] -[__NSCFType frame]: unrecognized selector sent to instance 0x7f86ca80a7c0
Illegal instruction: 4
________________________________________________________________________________
| victor:~/ros2_ws$
| => rviz2
[INFO] [rviz2]: Stereo is NOT SUPPORTED
[INFO] [rviz2]: OpenGl version: 2.1 (GLSL 1.2)
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/scripts
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/meshes
[INFO] [rviz2]: Stereo is NOT SUPPORTED
2019-03-17 19:19:58.742 rviz2[89084:5619825] -[_NSXPCConnectionClassCache frame]: unrecognized selector sent to instance 0x7fb748aaffe0
Illegal instruction: 4
________________________________________________________________________________
| victor:~/ros2_ws$
| => rviz2
[INFO] [rviz2]: Stereo is NOT SUPPORTED
[INFO] [rviz2]: OpenGl version: 2.1 (GLSL 1.2)
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/scripts
[WARN] [rviz2]: Could not find folder /Users/victor/ros2_ws/install/rviz_rendering_tests/share/rviz_rendering_tests/ogre_media_resources/meshes
[INFO] [rviz2]: Stereo is NOT SUPPORTED
Segmentation fault: 11

@vmayoral
Copy link
Member Author

Similar results obtained while installing things from binaries: https://gist.github.com/vmayoral/947dfcc0afacd0552d4b313bfa34def4

@wjwwood
Copy link
Member

wjwwood commented Mar 18, 2019

It wasn't built for Mojave, so it doesn't surprise me that it doesn't work.

I also currently do not have it working on Mojave. I don't believe I'll have any time to investigate right now.

@wjwwood
Copy link
Member

wjwwood commented Mar 18, 2019

Btw, our CI/binaries are for Sierra, though I regularly used it with High Sierra for a long time. See:

https://index.ros.org/doc/ros2/Installation/OSX-Install-Binary/#id1

@vmayoral
Copy link
Member Author

I also currently do not have it working on Mojave. I don't believe I'll have any time to investigate right now.

Totally understood. I'll look into downgrading for now and will try to book some time and look into this myself.

@tfoote tfoote added the in review Waiting for review (Kanban column) label Apr 20, 2019
@Karsten1987
Copy link
Contributor

@vmayoral It looks like the changes proposed in here work for Mojave, do you mind giving that a try?

@vmayoral
Copy link
Member Author

@Karsten1987, sure thing. From a quick look, seems like there's been some updates in ogre. Though that might do so I first tried quickly to update ogre:

brew install ogre
Updating Homebrew...
Ignoring path homebrew-cask/
To restore the stashed changes to /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask run:
  'cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask && git stash pop'
==> Auto-updated Homebrew!
Updated 3 taps (osrf/simulation, homebrew/core and homebrew/cask).
==> New Formulae
atlantis                                                                                  libzt
==> Updated Formulae
...
==> Installing ogre from osrf/simulation
Error: Your Xcode (10.1) is too outdated.
Please update to Xcode 10.2.1 (or delete it).
Xcode can be updated from the App Store.

Updated XCode to the latest version and re-launched it:

_____________________________________________
| victor:~/ros2_ws/src/ros2/geometry2 (ros2)$
| => brew install ogre
Updating Homebrew...
Ignoring path homebrew-cask/
To restore the stashed changes to /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask run:
  'cd /usr/local/Homebrew/Library/Taps/homebrew/homebrew-cask && git stash pop'
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/cask).
No changes to formulae.

==> Installing ogre from osrf/simulation
Warning: A newer Command Line Tools release is available.
Update them from Software Update in System Preferences.

Error: Cannot install osrf/simulation/ogre because conflicting formulae are installed.
  ogre1.9: because Differing version of the same formula

Please `brew unlink ogre1.9` before continuing.

Unlinking removes a formula's symlinks from /usr/local. You can
link the formula again after the install finishes. You can --force this
install, but the build may fail or cause obscure side effects in the
resulting software.
________________________________________________________________________________
| victor:~/ros2_ws/src/ros2/geometry2 (ros2)$
| => brew unlink ogre1.9
Unlinking /usr/local/Cellar/ogre1.9/1.9-20160714-108ab0bcc69603dba32c0ffd4bbbc39051f421c9_8... 27 symlinks removed
________________________________________________________________________________
| victor:~/ros2_ws/src/ros2/geometry2 (ros2)$
| => brew install ogre
==> Installing ogre from osrf/simulation
Warning: A newer Command Line Tools release is available.
Update them from Software Update in System Preferences.

==> Installing dependencies for osrf/simulation/ogre: boost, cmake and tbb
==> Installing osrf/simulation/ogre dependency: boost
==> Downloading https://homebrew.bintray.com/bottles/boost-1.69.0_2.mojave.bottle.tar.gz
==> Downloading from https://akamai.bintray.com/80/8089ad2fdc0edffcd0222043fda9a99bf82abf30f334305b9068fbef85b44893?__gda__=exp=1558386247~hmac=4f0d9befeaabf6cd20ae9dd99d8794075c
######################################################################## 100.0%
==> Pouring boost-1.69.0_2.mojave.bottle.tar.gz
🍺  /usr/local/Cellar/boost/1.69.0_2: 13,717 files, 489.4MB
==> Installing osrf/simulation/ogre dependency: cmake
==> Downloading https://homebrew.bintray.com/bottles/cmake-3.14.4.mojave.bottle.tar.gz
==> Downloading from https://akamai.bintray.com/59/5966170978a7df7552799372ebe2b440e0f1b413a318f87707f50a7d3063a2a5?__gda__=exp=1558386290~hmac=3028bf7b337851aef096426c2136ea6a3d
######################################################################## 100.0%
==> Pouring cmake-3.14.4.mojave.bottle.tar.gz
==> Caveats
Emacs Lisp files have been installed to:
  /usr/local/share/emacs/site-lisp/cmake
==> Summary
🍺  /usr/local/Cellar/cmake/3.14.4: 5,674 files, 50.4MB
==> Installing osrf/simulation/ogre dependency: tbb
==> Downloading https://homebrew.bintray.com/bottles/tbb-2019_U6.mojave.bottle.tar.gz
==> Downloading from https://akamai.bintray.com/4b/4bfdb3fba0523b5eeec1df616bcb441e91893655bfcadfe241dbdb2da8e8450c?__gda__=exp=1558386300~hmac=89c32cd0a678becbf4f349e54884c66344
######################################################################## 100.0%
==> Pouring tbb-2019_U6.mojave.bottle.tar.gz
🍺  /usr/local/Cellar/tbb/2019_U6: 134 files, 2.7MB
==> Installing osrf/simulation/ogre
==> Downloading https://downloads.sourceforge.net/project/ogre/ogre/1.7/ogre_src_v1-7-4.tar.bz2
==> Downloading from https://netcologne.dl.sourceforge.net/project/ogre/ogre/1.7/ogre_src_v1-7-4.tar.bz2
######################################################################## 100.0%
==> Downloading https://gist.github.com/wjwwood/4237236/raw/e357f1b9fa8b26d02ed84f411d5b5eb7446c68c5/pkg_config_fix.patch
==> Downloading from https://gist.githubusercontent.com/wjwwood/4237236/raw/e357f1b9fa8b26d02ed84f411d5b5eb7446c68c5/pkg_config_fix.patch
######################################################################## 100.0%
==> Downloading https://gist.github.com/wjwwood/4237236/raw/57cb907304433cc0bb83fd332ff98a5789102b00/prevent_framework_apple.patch
==> Downloading from https://gist.githubusercontent.com/wjwwood/4237236/raw/57cb907304433cc0bb83fd332ff98a5789102b00/prevent_framework_apple.patch
######################################################################## 100.0%
==> Downloading https://gist.github.com/wjwwood/4237236/raw/31ae53cefdb693cb2fb81333178163a29f8cf7ca/osx_isystem.patch
==> Downloading from https://gist.githubusercontent.com/wjwwood/4237236/raw/31ae53cefdb693cb2fb81333178163a29f8cf7ca/osx_isystem.patch
######################################################################## 100.0%
==> Downloading https://gist.github.com/wjwwood/4237236/raw/9c7df6689da4e0b358429692f6615f2707469f45/osx_linking.patch
==> Downloading from https://gist.githubusercontent.com/wjwwood/4237236/raw/9c7df6689da4e0b358429692f6615f2707469f45/osx_linking.patch
######################################################################## 100.0%
==> Downloading https://gist.github.com/wjwwood/4237236/raw/d667813d5ee1e712e0ea8cc99df9a85da6141b1e/replace_pbxcp_with_ditto.patch
==> Downloading from https://gist.githubusercontent.com/wjwwood/4237236/raw/d667813d5ee1e712e0ea8cc99df9a85da6141b1e/replace_pbxcp_with_ditto.patch
######################################################################## 100.0%
==> Downloading https://gist.github.com/wjwwood/5672104/raw/bf69b4528b3090ad99a760029beb75b7aeb11248/fix_boost_linking.patch
==> Downloading from https://gist.githubusercontent.com/wjwwood/5672104/raw/bf69b4528b3090ad99a760029beb75b7aeb11248/fix_boost_linking.patch
######################################################################## 100.0%
==> Downloading https://gist.github.com/hgaiser/7346167/raw/3167c2fde153618e55b37f857ef4a90cc54ed2a3/ogre.patch
==> Downloading from https://gist.githubusercontent.com/hgaiser/7346167/raw/3167c2fde153618e55b37f857ef4a90cc54ed2a3/ogre.patch
######################################################################## 100.0%
==> Downloading https://gist.github.com/scpeters/b9034c613189426c2d6a/raw/b74a4c1fb795a69b42d1189dc2a35fac3b975959/ogre_agl.diff
==> Downloading from https://gist.githubusercontent.com/scpeters/b9034c613189426c2d6a/raw/b74a4c1fb795a69b42d1189dc2a35fac3b975959/ogre_agl.diff
######################################################################## 100.0%
==> Downloading https://bitbucket.org/scpeters/ogre/commits/78331c592397878ab3377b5f9b55086aca7a63e5/raw
######################################################################## 100.0%
==> Patching
==> Applying pkg_config_fix.patch
patching file CMake/Templates/OGRE.pc.in
==> Applying prevent_framework_apple.patch
patching file OgreMain/CMakeLists.txt
==> Applying osx_isystem.patch
patching file CMakeLists.txt
==> Applying osx_linking.patch
patching file CMake/Dependencies.cmake
Hunk #1 succeeded at 123 with fuzz 1.
patching file CMake/Packages/FindFreetype.cmake
==> Applying replace_pbxcp_with_ditto.patch
patching file Components/Paging/CMakeLists.txt
patching file Components/Property/CMakeLists.txt
patching file Components/RTShaderSystem/CMakeLists.txt
patching file Components/Terrain/CMakeLists.txt
patching file OgreMain/CMakeLists.txt
patching file PlugIns/BSPSceneManager/CMakeLists.txt
patching file PlugIns/CgProgramManager/CMakeLists.txt
patching file PlugIns/OctreeSceneManager/CMakeLists.txt
patching file PlugIns/OctreeZone/CMakeLists.txt
patching file PlugIns/PCZSceneManager/CMakeLists.txt
patching file PlugIns/ParticleFX/CMakeLists.txt
==> Applying fix_boost_linking.patch
patching file CMake/Dependencies.cmake
Hunk #1 succeeded at 134 with fuzz 1.
==> Applying ogre.patch
patching file RenderSystems/GL/src/OSX/OgreOSXCocoaWindow.mm
patching file RenderSystems/GL/src/OSX/OgreOSXGLSupport.mm
==> Applying ogre_agl.diff
patching file CMake/Dependencies.cmake
patching file RenderSystems/GL/CMakeLists.txt
patch unexpectedly ends in middle of line
Hunk #1 succeeded at 218 with fuzz 1.
==> Applying ogre-78331c592397878ab3377b5f9b55086aca7a63e5.diff
patching file CMakeLists.txt
==> cmake -DCMAKE_OSX_ARCHITECTURES='x86_64' -F/Library/Frameworks/ -lfreetype -DOGRE_BUILD_PLUGIN_CG=OFF -DCMAKE_C_FLAGS_RELEASE=-DNDEBUG -DCMAKE_CXX_FLAGS_RELEASE=-DNDEBUG -DCM
==> make install
🍺  /usr/local/Cellar/ogre/1.7.4: 493 files, 15.3MB, built in 4 minutes
==> Caveats
==> cmake
Emacs Lisp files have been installed to:
  /usr/local/share/emacs/site-lisp/cmake

tried launching again:

victor:~/ros2_ws$
| => rviz2
[INFO] [rviz2]: Stereo is NOT SUPPORTED
[INFO] [rviz2]: OpenGl version: 2.1 (GLSL 1.2)
[INFO] [rviz2]: Stereo is NOT SUPPORTED
Segmentation fault: 11

That didn't do so I'll fetch the latest sources and compile again the ros2_ws. Will report back tomorrow morning when it finishes compiling.

@wjwwood
Copy link
Member

wjwwood commented May 21, 2019

rviz in ROS 2 has it's own copy of Ogre, so the one in Homebrew shouldn't affect it. Though I haven't tried that lately.

@vmayoral
Copy link
Member Author

@Karsten1987, fyi, I'm facing some issues in Mojave with Qt after updating. Particularly:

Starting >>> qt_gui_cpp
--- stderr: qt_gui_cpp
CMake Error at /usr/local/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:15 (message):
  The imported target "Qt5::Core" references the file

     "/usr/local/.//mkspecs/macx-clang"

  but this file does not exist.  Possible reasons include:

  * The file was deleted, renamed, or moved to another location.

  * An install or uninstall procedure did not complete successfully.

  * The installation package was faulty and contained

     "/usr/local/lib/cmake/Qt5Core/Qt5CoreConfigExtras.cmake"

  but not all the files it references.

Call Stack (most recent call first):
  /usr/local/lib/cmake/Qt5Core/Qt5CoreConfigExtras.cmake:50 (_qt5_Core_check_file_exists)
  /usr/local/lib/cmake/Qt5Core/Qt5CoreConfig.cmake:169 (include)
  /usr/local/lib/cmake/Qt5Gui/Qt5GuiConfig.cmake:83 (find_package)
  /usr/local/lib/cmake/Qt5Widgets/Qt5WidgetsConfig.cmake:83 (find_package)
  /usr/local/lib/cmake/Qt5/Qt5Config.cmake:28 (find_package)
  src/qt_gui_cpp/CMakeLists.txt:3 (find_package)

AFAIK, this not a known issue. I'll explore this in more detail tonight and report back.

@vmayoral
Copy link
Member Author

Still stuck with Qt. I can't put more time on this for now. Let's see if I can review it again over the weekend.

@vmayoral
Copy link
Member Author

vmayoral commented May 22, 2019

All right, managed to reproduce it finally. This issue still applies to me:

rviz2
[INFO] [rviz2]: Stereo is NOT SUPPORTED
[INFO] [rviz2]: OpenGl version: 2.1 (GLSL 1.2)
[INFO] [rviz2]: Stereo is NOT SUPPORTED
Segmentation fault: 11

the dump https://gist.github.com/vmayoral/1955bc258f94425e9c9c3923d7bcc05b

Edit: reproduced with latest release dashing repos at the time of writing.

@vmayoral
Copy link
Member Author

Doing ros2/ros2#700 (comment) my issue finally got fixed. There seems to be an issue with the default ogre from brew and osrf's fixes it.

Closing here and thanks for the support.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
in review Waiting for review (Kanban column)
Projects
None yet
Development

No branches or pull requests

4 participants