Folosesc Ubuntu 20.04 LTS și tocmai am instalat Awesome Tiling WM. Întâlnesc probleme de „eroare de căutare a simbolurilor” când instalez Rofi, chiar dacă pot găsi simbolul în biblioteca în care caută și nu știu ce să fac în acest sens.
Iată ce am făcut:
Eu instalez Rofi cu
~$ sudo apt install rofi
Dar când îl rulez, primesc
~$ rofi
rofi: eroare de căutare a simbolurilor: ~/anaconda3/envs/py37/lib/./libgdk_pixbuf-2.0.so.0: simbol nedefinit: g_task_set_name
Totuși, simbolul g_task_set_name
este în biblioteca din locația respectivă:
~$ nm -D --with-symbol-versions ~/anaconda3/envs/py37/lib/./libgdk_pixbuf-2.0.so.0 | grep g_task_set_name
U g_task_set_name
(Am văzut în altă parte că versiunea acestor simboluri contează, dar nu văd nicio versiune după acest simbol. Nu știu ce înseamnă asta, unele dintre celelalte simboluri din acea bibliotecă arată versiunea după nume.)
În plus, când rulez rofi din interiorul folderului cu biblioteca, nu există nicio problemă:
~/anaconda3/envs/py37/lib$ rofi
Rofi nu este sigur ce să arate.
Vă rugăm să specificați modul pe care doriți să îl afișați.
rofi -show {modul}
Următoarele moduri sunt activate:
* fereastră
* alerga
* ssh
Pot fi activate următoarele:
* windowcd
* beat
* combi
* chei
Pentru a activa un mod, adăugați-l la lista de moduri din setarea de mod.
În cele din urmă, vreau să adaug rofi la o legare de taste în awesomeWM. Deci, o soluție ar putea fi să ruleze comanda întotdeauna din acest folder cumva.Dar nu știu cum să fac asta.
În timp ce încerc să rezolv problema mai detaliat, devin mai confuz. Găsesc aceeași bibliotecă în alte două locații, una pentru 32 de biți și una pentru 64 de biți.
~$ dpkg -S libgdk_pixbuf-2.0.so.0
libgdk-pixbuf2.0-0:amd64: /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0.4000.0
libgdk-pixbuf2.0-0:amd64: /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0
libgdk-pixbuf2.0-0:i386: /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0
libgdk-pixbuf2.0-0:i386: /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0.4000.0
Simbolul în niciuna dintre aceste biblioteci:
~$ nm -D --with-symbol-versions /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 | grep g_task_set_
U g_task_set_return_on_cancel
U g_task_set_source_tag
U g_task_set_task_data
(cu ieșire identică pentru biblioteca din folderul i386). Dar rofi încă rulează din folderul pe 64 de biți:
/usr/lib/x86_64-linux-gnu$ rofi
Rofi nu este sigur ce să arate.
Vă rugăm să specificați modul pe care doriți să îl afișați.
rofi -show {modul}
...
Dar nu din folderul pe 32 de biți:
/usr/lib/i386-linux-gnu$ rofi
rofi: eroare de căutare simbol: /home/martin/anaconda3/envs/py37/lib/./libgdk_pixbuf-2.0.so.0: simbol nedefinit: g_task_set_name
Aș dori ajutor pentru ca Rofi să funcționeze, de preferință prin rezolvarea problemei, dar și soluțiile ar fi bune.
De asemenea, aș aprecia ajutor doar pentru a înțelege ce se întâmplă. Nu înțeleg cum caută rofi biblioteci și simboluri. De ce nu poate găsi simbolurile în biblioteci? Și de ce rofi rulează doar în două din cele trei foldere care conțin biblioteca, chiar dacă doar unul dintre acele două foldere are o bibliotecă cu simbolul potrivit?
Mulțumesc anticipat