ArduPilot / ardupilot_gz

Tools for ArduPilot ROS2 integration and testing on ROS 2 humble
GNU General Public License v3.0
31 stars 22 forks source link

rviz crashing due to shared library error - caused by VSCode GTK_PATH environment variable #39

Closed Ryanf55 closed 10 months ago

Ryanf55 commented 10 months ago

Environment

Steps to reproduce

colcon build --packages-up-to ardupilot_gz_bringup
. install/setup.bash
ros2 launch ardupilot_gz_bringup iris_runway.launch.py

Logs

[rviz2-8] /opt/ros/humble/lib/rviz2/rviz2: symbol lookup error: /snap/core20/current/lib/x86_64-linux-gnu/libpthread.so.0: undefined symbol: __libc_pthread_init, version GLIBC_PRIVATE
[ERROR] [rviz2-8]: process has died [pid 2168649, exit code 127, cmd '/opt/ros/humble/lib/rviz2/rviz2 -d /home/rfriedman/Dev/ardu_ws/install/ardupilot_gz_bringup/share/ardupilot_gz_bringup/rviz/iris.rviz --ros-args'].

Now, this is a likely a direct problem with rviz

rfriedman@dev-rfriedman01:~/Dev/ardu_ws$ rviz2 
rviz2: symbol lookup error: /snap/core20/current/lib/x86_64-linux-gnu/libpthread.so.0: undefined symbol: __libc_pthread_init, version GLIBC_PRIVATE
Ryanf55 commented 10 months ago

This is not a problem of ardupilot_gz, it's caused by environment variables that VSCode sets breaking rviz: https://github.com/ros2/ros2/issues/1406

Extra info:

rfriedman@dev-rfriedman01:~/Dev/ardu_ws$ readelf -d /opt/ros/humble/bin/rviz2 | grep NEEDED
 0x0000000000000001 (NEEDED)             Shared library: [librviz_common.so]
 0x0000000000000001 (NEEDED)             Shared library: [libQt5Widgets.so.5]
 0x0000000000000001 (NEEDED)             Shared library: [libQt5Core.so.5]
 0x0000000000000001 (NEEDED)             Shared library: [librclcpp.so]
 0x0000000000000001 (NEEDED)             Shared library: [librcutils.so]
 0x0000000000000001 (NEEDED)             Shared library: [libstdc++.so.6]
 0x0000000000000001 (NEEDED)             Shared library: [libgcc_s.so.1]
 0x0000000000000001 (NEEDED)             Shared library: [libc.so.6]
rfriedman@dev-rfriedman01:~/Dev/ardu_ws$ strace -e trace=open rviz2
rviz2: symbol lookup error: /snap/core20/current/lib/x86_64-linux-gnu/libpthread.so.0: undefined symbol: __libc_pthread_init, version GLIBC_PRIVATE
+++ exited with 127 +++
rfriedman@dev-rfriedman01:~/Dev/ardu_ws$ echo $GTK_PATH
/snap/code/145/usr/lib/x86_64-linux-gnu/gtk-3.0

The proposed solution below worked.

unset GTK_PATH

Since it's resolved by the other issue, I'm closing this.