ERROR: x11-plugins/gkrellm-xkb-1.05-r2::gentoo failed (SOLVED)

gkrellm-xkb-1.05-r2 собираться перестал.

...
main.c:95:13: warning: ‘draw_flag’ used but never defined
make: *** [Makefile:26: main.o] Error 1
* ERROR: x11-plugins/gkrellm-xkb-1.05-r2::gentoo failed (compile phase):
* emake failed
...

Решение: кладем в файл

/etc/portage/patches/x11-plugins/gkrellm-xkb-1.05-r2/gkrellm-xkb-draw_flag.patch

следующее содержимое

--- a/main.c    2004-02-21 21:26:36.000000000 +0500
+++ b/main.c    2026-04-10 23:16:34.447845926 +0500
@@ -92,7 +92,7 @@
 static void keyboard_selection(GtkMenuItem *menuitem, gpointer data);
 static void button_press_event(GtkWidget *widget, GdkEventButton *ev);
 static void create_plugin(GtkWidget *vbox, gint first_create);
-static void draw_flag();
+static void draw_flag(int redraw);
 static void cycle_layout();
 static gchar *get_property (Display *disp, Window win,
         Atom xa_prop_type, gchar *prop_name, unsigned long *size);

Собираем.

Описание тулчейна до и после обновлоения.
Журнал ошибки сборки (на пасту, потом (с учётом ограничений жизни оной) самое интересное и относящееся к проблеме в корневое сообщение…
Происхождение ебилда (утянут из оверлея, или полностью самописный)…

:wq
--
Live free or die

Ого.

Сколько сразу требований :)
Ebuid из официального portage, добавлен один патч, исправляющий объявление функции. С ним собирается, без него нет. Алиса говорит, из-за ужесточения требований к синтаксису в новых компиляторах.
Собственно, патч gkrellm-xkb-1.05-r3-draw_flag.patch:


--- a/main.c 2004-02-21 21:26:36.000000000 +0500
+++ b/main.c 2026-04-10 23:16:34.447845926 +0500
@@ -92,7 +92,7 @@
static void keyboard_selection(GtkMenuItem *menuitem, gpointer data);
static void button_press_event(GtkWidget *widget, GdkEventButton *ev);
static void create_plugin(GtkWidget *vbox, gint first_create);
-static void draw_flag();
+static void draw_flag(int redraw);
static void cycle_layout();
static gchar *get_property (Display *disp, Window win,
Atom xa_prop_type, gchar *prop_name, unsigned long *size);

/

Тем более…

Под такие ситуации давненько запилена фича userpatch.
Положить патчик в условленное место — и замечательно соберётся ебилд из дерева (r2).

После чего патчик занести в багзиллу. Как минимум гентушную. А можно и до апстрима прогуляться.
Порядок/приоритет — вопрос открытый.

:wq
--
Live free or die

Отлично!

Спасибо за информацию про userpatch. Глянем, глянем.

.

Пожалуйста. ☺

Кстати, к утверждениям в соседней теме, русскоязычное описание НЯП «несколько» опережает оффициальное на горге, с административным утверждением приоритета английского языка.

:wq
--
Live free or die

Респект Anarchist за то, что

Респект Anarchist за то, что вывел за руку неразумного на свет. :)
Меняю топик.

!

Э…
Здесь можешь не хвалиться, но занеси патчик как минимум в гентушную багзиллу.
И вот тогда вопрос будет решён.

:wq
--
Live free or die

!

Anarchist написал(а):
Э…
Здесь можешь не хвалиться, но занеси патчик как минимум в гентушную багзиллу.
И вот тогда вопрос будет решён.

Сплошные руководства к действию, спасибо. :)

В багзилле след оставил, но вагон сопутствующей (и бесполезной - вроде состояния тулчейна до и после) информации собирать лень, так что вряд ли там кто-то обратит внимание. Косяк явный и стопроцентно воспроизводимый, сопровождающие среагируют. А нет - значит, так сопровождают.
Для меня вопрос решен. Кому интересно - тут узнают, за остальными гоняться не буду.

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".