Awesome 3.1.2, problemy z aktualizacją
Biorąc się za update awesome, natrafiłem na całkiem nieciekawie wyglądający błąd przy kompilacji:
[ 13% ] Building C object C Make Files/awesome.dir/client.c.o /home/pkgmk/work/awesome/src/awesome-3.1.1/client.c: In function 'luaA_client_index': /home/pkgmk/work/awesome/src/awesome-3.1.1/client.c:1458: error: 'xcb_get_wm_class_reply_t' has no member named 'class' /home/pkgmk/work/awesome/src/awesome-3.1.1/client.c:1466: error: 'xcb_get_wm_class_reply_t' has no member named 'name' make[3]: *** [C Make Files?/awesome.dir/client.c.o] Error 1 make[2]: *** [C Make Files?/awesome.dir/all] Error 2 make[1]: *** [all] Error 2 make: *** [cmake-build] Error 2
Zacząłem zatem przeszukiwać zasoby Google, okazało się że odpowiedź kryła się tuż za rogiem - na forum Ubuntu. Wystarczyło dokonać zmian w wymienionych w błędzie linijkach 1458 i 1466. Przeszukiwanie ~1400 linijek po to by zamienić te dwa wyrażenia było by bardzo czasochłonne, posłużyłem się więc narzędziem sed. Całe polecenie prezentuje się następująco:
sed -i -e 's/hint.class/hint.class_name/g' \ -e 's/hint.name/hint.instance_name/g' client.c
Wykonujemy je w katalogu do którego wypakowaliśmy źródła awesome. Po tej operacji awesome skompiluje się bez żadnego problemu.
