Instalei um novo Ubuntu 18.04 LTS Desktop (64 bits) como uma instalação mínima em uma VM VirtualBox (em um host MacOS). Em seguida, executei os seguintes comandos:
$ history
1 nm -D /usr/lib/i386-linux-gnu/libX11.so.6 | grep xcb_wait
2 sudo apt-get install cmake zlib1g-dev libglib2.0-dev
3 sudo apt-get install libc6-i386 lib32z1-dev libstdc++6:i386 libbz2-1.0:i386 libfreetype6:i386 libglib2.0-0:i386 libsm6:i386 libxrandr2:i386 libfontconfig1:i386
4 nm -D /usr/lib/i386-linux-gnu/libX11.so.6 | grep xcb_wait
5 history
Na segunda saída nm
, vejo:
$ nm -D /usr/lib/i386-linux-gnu/libX11.so.6 | grep xcb_wait
U xcb_wait_for_event
U xcb_wait_for_reply64
Eu também repeti isso para o Ubuntu 16.04.4 LTS (64 bits), que tinha a saída nm
:
$ nm -D /usr/lib/i386-linux-gnu/libX11.so.6 | grep xcb_wait
U xcb_wait_for_event
U xcb_wait_for_reply
Por que o símbolo xcb_wait_for_reply64
agora pode estar presente para uma biblioteca i386 (32 bits)?
Relacionado: Por que o Ubuntu principal ainda é compilado em i386?
P.S. Eu não espero que ninguém tenha tempo para responder isso, é mais um braindump divertido (ou horripilante ) enquanto eu tento e descobrir uma solução alternativa para esse conjunto de aplicativos herdados.