Problem with libx11.so.6: undefined symbol: xcb_wait_for_reply64
I had this problem with genymotion
.
Just navigate to genymotion directory ( cd /opt/genymotion
) and do.
sudo mv libxcb.so.1 libxcb.so.1.back
If this did'nt solve your problem do
sudo mv libxcb.so.1.back libxcb.so.1
Related videos on Youtube
Chisko
I dropped Systems Engineering because of a sudden ANSI C to Java switch while majoring and decided to go for Electronics Engineering instead. Worked on mostly QA and hardware testing in my first years after graduating, until 2014 when I learned Android and revisited Java thanks to a company sponsorship. Since then I've been specializing in mobile, while also tackling backend and design issues on my personal projects.
Updated on September 18, 2022Comments
-
Chisko over 1 year
I have a problem with a one-day-old arch system. I accidentally moved
/usr/lib/libX11.so.6
out of/usr/lib
and then put it back. But now, I cannot launch Android Studio because of this:/usr/lib/jvm/java-8-jdk/bin/java: symbol lookup error: /usr/lib/libX11.so.6: undefined symbol: xcb_wait_for_reply64
I have tried:
- Reinstalling/recompiling libxcb and libX11
- Switching between Oracle's JDK and OpenJDK
- Reinstalled AS
Nothing works. Permissions and ownership look good to me as well:
me@laptop ~ % ls -ld /usr/lib/libX11* lrwxrwxrwx 1 root root 19 Oct 5 00:24 /usr/lib/libX11-xcb.so -> libX11-xcb.so.1.0.0 lrwxrwxrwx 1 root root 19 Oct 5 00:24 /usr/lib/libX11-xcb.so.1 -> libX11-xcb.so.1.0.0 -rwxr-xr-x 1 root root 5968 Oct 5 00:24 /usr/lib/libX11-xcb.so.1.0.0 lrwxrwxrwx 1 root root 15 Oct 5 00:24 /usr/lib/libX11.so -> libX11.so.6.3.0 lrwxrwxrwx 1 root root 15 Oct 5 00:24 /usr/lib/libX11.so.6 -> libX11.so.6.3.0 -rwxr-xr-x 1 root root 1306096 Oct 5 00:24 /usr/lib/libX11.so.6.3.0 me@laptop ~ % ls -ld /usr/lib/libx* lrwxrwxrwx 1 root root 14 Oct 2 09:27 /usr/lib/libx264.so -> libx264.so.148 -rwxr-xr-x 1 root root 1027856 Oct 2 09:27 /usr/lib/libx264.so.148 lrwxrwxrwx 1 root root 13 Sep 29 09:09 /usr/lib/libx265.so -> libx265.so.95 -rwxr-xr-x 1 root root 14953136 Sep 29 09:09 /usr/lib/libx265.so.95 lrwxrwxrwx 1 root root 21 Oct 7 04:01 /usr/lib/libxatracker.so -> libxatracker.so.2.3.0 lrwxrwxrwx 1 root root 21 Oct 7 04:01 /usr/lib/libxatracker.so.2 -> libxatracker.so.2.3.0 -rwxr-xr-x 1 root root 3305176 Oct 7 04:01 /usr/lib/libxatracker.so.2.3.0 lrwxrwxrwx 1 root root 25 May 22 13:44 /usr/lib/libxcb-composite.so -> libxcb-composite.so.0.0.0 lrwxrwxrwx 1 root root 25 May 22 13:44 /usr/lib/libxcb-composite.so.0 -> libxcb-composite.so.0.0.0 -rwxr-xr-x 1 root root 10336 May 22 13:44 /usr/lib/libxcb-composite.so.0.0.0 lrwxrwxrwx 1 root root 22 May 22 13:44 /usr/lib/libxcb-damage.so -> libxcb-damage.so.0.0.0 lrwxrwxrwx 1 root root 22 May 22 13:44 /usr/lib/libxcb-damage.so.0 -> libxcb-damage.so.0.0.0 -rwxr-xr-x 1 root root 10336 May 22 13:44 /usr/lib/libxcb-damage.so.0.0.0
I'm running
me@laptop ~ % uname -a Linux laptop 4.7.6-1-ARCH #1 SMP PREEMPT Fri Sep 30 19:28:42 CEST 2016 x86_64 GNU/Linux
Any pointers on how to solve this? Thanks so much!
* EDIT *
The problem is not specific to java, since genymotion cannot be launched either:
me@laptop ~ % genymotion genymotion: symbol lookup error: /usr/lib/libX11.so.6: undefined symbol: xcb_wait_for_reply64
* 2nd EDIT *
Followed @n.st advice:
me@laptop ~ % ldd $(which genymotion) | grep libX11 libX11.so.6 => /usr/lib/libX11.so.6 (0x00007fc3520d5000) libX11-xcb.so.1 => /opt/genymotion/libX11-xcb.so.1 (0x00007fc34e201000) me@laptop ~ % sudo mv /opt/genymotion/libX11-xcb.so.1 . [sudo] password for me: me@laptop ~ % genymotion genymotion: symbol lookup error: /usr/lib/libX11.so.6: undefined symbol: xcb_wait_for_reply64 127 me@laptop ~ % ldd $(which genymotion) | grep libX11 libX11.so.6 => /usr/lib/libX11.so.6 (0x00007feb0712d000) libX11-xcb.so.1 => /usr/lib/libX11-xcb.so.1 (0x00007feb03259000) me@laptop ~ % ldd $(which genymotion) | grep libxcb libxcb-dri3.so.0 => /opt/genymotion/libxcb-dri3.so.0 (0x00007f5f354e1000) libxcb-present.so.0 => /opt/genymotion/libxcb-present.so.0 (0x00007f5f352de000) libxcb-sync.so.1 => /opt/genymotion/libxcb-sync.so.1 (0x00007f5f350d8000) libxcb.so.1 => /opt/genymotion/libxcb.so.1 (0x00007f5f34270000) libxcb-glx.so.0 => /opt/genymotion/libxcb-glx.so.0 (0x00007f5f34059000) libxcb-dri2.so.0 => /opt/genymotion/libxcb-dri2.so.0 (0x00007f5f33e54000)
-
n.st over 7 yearsCheck if genymotion is using the correct library paths (there might be a library file in
.
,/usr/local/lib
, …, that's shadowing the one in/usr/lib
):ldd $(which genymotion)
-
n.st over 7 yearsWhat about
libxcb*
? -
n.st over 7 years
-
Chisko over 7 yearsYes, I did see those yesterday, that's why I moved
libX11-xcb.so.1
out of/opt/genymotion
, but the problem still shows launching Android Studio :( -
n.st over 7 yearsWhat command are you using to launch Android Studio?
-
Chisko over 7 yearsThat's the unusual thing, because I'm able to launch it directly running
./studio.sh
, the symlink in/usr/bin/android-studio
points to it, but I don't know how and why this extra layer of stuff is going on -
n.st over 7 yearsLet us continue this discussion in chat.
-
Chisko over 7 yearsalready tried that. Did not work.
-
Chisko over 5 yearsthis might be useful, unfortunately I cannot verify it because I ended up formatting. Thanks.