История изменений
Исправление micronekodesu, (текущая версия) :
Тебе нужны следующие пакеты (ну, с зависимостями само собой)
dh-autoreconf
libgtk-3-dev
liblightdm-gobject-dev
Запускаешь autogen.sh (выполняется без ошибок), потом configure (выполняется без ошибок), потом make, который свалится вот с этим
src/callbacks.c: In function ‘handle_password’:
src/callbacks.c:55:9: error: too many arguments to function ‘lightdm_greeter_respond’
lightdm_greeter_respond(app->greeter, password_text, NULL);
^~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/lightdm-gobject-1/lightdm.h:14:0,
from src/callbacks.c:3:
/usr/include/lightdm-gobject-1/lightdm/greeter.h:136:6: note: declared here
void lightdm_greeter_respond (LightDMGreeter *greeter, const gchar *response);
^~~~~~~~~~~~~~~~~~~~~~~
Makefile:559: recipe for target 'src/lightdm_mini_greeter-callbacks.o' failed
make[1]: *** [src/lightdm_mini_greeter-callbacks.o] Error 1
make[1]: Leaving directory '/home/username/lightdm-mini-greeter/lightdm-mini-greeter'
Makefile:383: recipe for target 'all' failed
make: *** [all] Error 2
Про это есть issue. Соотстветственно открываешь ./src/callbacks.c, там ищешь по lightdm_greeter_respond (это 55 строка), меняешь строку на
#ifdef LIGHTDMGT1192
lightdm_greeter_respond(app->greeter, password_text, NULL);
#elseif
lightdm_greeter_respond(app->greeter, password_text);
#endif
Запускаешь make опять, получаешь
src/callbacks.c: In function ‘handle_password’:
src/callbacks.c:53:22: error: unused variable ‘password_text’ [-Werror=unused-variable]
const gchar *password_text =
^~~~~~~~~~~~~
cc1: all warnings being treated as errors
Makefile:559: recipe for target 'src/lightdm_mini_greeter-callbacks.o' failed
make[1]: *** [src/lightdm_mini_greeter-callbacks.o] Error 1
make[1]: Leaving directory '/home/username/lightdm-mini-greeter/lightdm-mini-greeter'
Makefile:383: recipe for target 'all' failed
make: *** [all] Error 2
Правишь Makefile - на 330 строке добавляешь -Wno-unused-variable
чтоб получилось что-то типа
AM_CFLAGS = -g -Wall -Wno-unused-variable -O3 --std=c11 -Wextra -Werror --std=c11 -pedantic \
Ну и дальше прочие аргументы, я тут только одну строку привел.
Запускаешь make опять, получаешь
src/utils.c: In function ‘begin_authentication_as_default_user’:
src/utils.c:27:9: error: too many arguments to function ‘lightdm_greeter_authenticate’
lightdm_greeter_authenticate(app->greeter, default_user, NULL);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/lightdm-gobject-1/lightdm.h:14:0,
from src/utils.c:2:
/usr/include/lightdm-gobject-1/lightdm/greeter.h:128:6: note: declared here
void lightdm_greeter_authenticate (LightDMGreeter *greeter, const gchar *username);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
Makefile:601: recipe for target 'src/lightdm_mini_greeter-utils.o' failed
make[1]: *** [src/lightdm_mini_greeter-utils.o] Error 1
make[1]: Leaving directory '/home/username/lightdm-mini-greeter/lightdm-mini-greeter'
Makefile:383: recipe for target 'all' failed
make: *** [all] Error 2
Подобное мы уже видели раньше, идешь в src/utils.c, на 22 строке применяешь известный костыль по аналогии с lightdm_greeter_respond - меняешь lightdm_greeter_authenticate(app->greeter, default_user, NULL);
на
#ifdef LIGHTDMGT1192
lightdm_greeter_authenticate(app->greeter, default_user, NULL);
#elseif
lightdm_greeter_authenticate(app->greeter, default_user);
#endif
Запускаешь make опять. На этот раз все выполняется без ошибок.
Запускаешь sudo make install
, это все раскатывается, перегружаешься, ловишь кучу проблем и опять ставишь ОС с нуля.
Исходная версия micronekodesu, :
Тебе нужны следующие пакеты
dh-autoreconf
libgtk-3-dev
liblightdm-gobject-dev
Запускаешь autogen.sh (выполняется без ошибок), потом configure (выполняется без ошибок), потом make, который свалится вот с этим
src/callbacks.c: In function ‘handle_password’:
src/callbacks.c:55:9: error: too many arguments to function ‘lightdm_greeter_respond’
lightdm_greeter_respond(app->greeter, password_text, NULL);
^~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/lightdm-gobject-1/lightdm.h:14:0,
from src/callbacks.c:3:
/usr/include/lightdm-gobject-1/lightdm/greeter.h:136:6: note: declared here
void lightdm_greeter_respond (LightDMGreeter *greeter, const gchar *response);
^~~~~~~~~~~~~~~~~~~~~~~
Makefile:559: recipe for target 'src/lightdm_mini_greeter-callbacks.o' failed
make[1]: *** [src/lightdm_mini_greeter-callbacks.o] Error 1
make[1]: Leaving directory '/home/username/lightdm-mini-greeter/lightdm-mini-greeter'
Makefile:383: recipe for target 'all' failed
make: *** [all] Error 2
Про это есть issue. Соотстветственно открываешь ./src/callbacks.c, там ищешь по lightdm_greeter_respond (это 55 строка), меняешь строку на
#ifdef LIGHTDMGT1192
lightdm_greeter_respond(app->greeter, password_text, NULL);
#elseif
lightdm_greeter_respond(app->greeter, password_text);
#endif
Запускаешь make опять, получаешь
src/callbacks.c: In function ‘handle_password’:
src/callbacks.c:53:22: error: unused variable ‘password_text’ [-Werror=unused-variable]
const gchar *password_text =
^~~~~~~~~~~~~
cc1: all warnings being treated as errors
Makefile:559: recipe for target 'src/lightdm_mini_greeter-callbacks.o' failed
make[1]: *** [src/lightdm_mini_greeter-callbacks.o] Error 1
make[1]: Leaving directory '/home/username/lightdm-mini-greeter/lightdm-mini-greeter'
Makefile:383: recipe for target 'all' failed
make: *** [all] Error 2
Правишь Makefile - на 330 строке добавляешь -Wno-unused-variable
чтоб получилось что-то типа
AM_CFLAGS = -g -Wall -Wno-unused-variable -O3 --std=c11 -Wextra -Werror --std=c11 -pedantic \
Ну и дальше прочие аргументы, я тут только одну строку привел.
Запускаешь make опять, получаешь
src/utils.c: In function ‘begin_authentication_as_default_user’:
src/utils.c:27:9: error: too many arguments to function ‘lightdm_greeter_authenticate’
lightdm_greeter_authenticate(app->greeter, default_user, NULL);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/lightdm-gobject-1/lightdm.h:14:0,
from src/utils.c:2:
/usr/include/lightdm-gobject-1/lightdm/greeter.h:128:6: note: declared here
void lightdm_greeter_authenticate (LightDMGreeter *greeter, const gchar *username);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
Makefile:601: recipe for target 'src/lightdm_mini_greeter-utils.o' failed
make[1]: *** [src/lightdm_mini_greeter-utils.o] Error 1
make[1]: Leaving directory '/home/username/lightdm-mini-greeter/lightdm-mini-greeter'
Makefile:383: recipe for target 'all' failed
make: *** [all] Error 2
Подобное мы уже видели раньше, идешь в src/utils.c, на 22 строке применяешь известный костыль по аналогии с lightdm_greeter_respond - меняешь lightdm_greeter_authenticate(app->greeter, default_user, NULL);
на
#ifdef LIGHTDMGT1192
lightdm_greeter_authenticate(app->greeter, default_user, NULL);
#elseif
lightdm_greeter_authenticate(app->greeter, default_user);
#endif
Запускаешь make опять. На этот раз все выполняется без ошибок.
Запускаешь sudo make install
, это все раскатывается, перегружаешься, ловишь кучу проблем и опять ставишь ОС с нуля.