LINUX.ORG.RU

История изменений

Исправление donaldpyro, (текущая версия) :

[user@localhost acpi_call]$ make
make -C /lib/modules/5.6.14-desktop-2.mga7/build M=/home/user/acpi_call modules
make[1]: вход в каталог «/usr/src/kernel-5.6.14-desktop-2.mga7»
  CC [M]  /home/user/acpi_call/acpi_call.o
In file included from ./include/acpi/platform/acenv.h:163,
                 from ./include/acpi/acpi.h:22,
                 from /home/user/acpi_call/acpi_call.c:9:
./include/acpi/platform/aclinux.h:18:2: ошибка: #error "Please don't include <acpi/acpi.h> directly, include <linux/acpi.h> instead."
 #error "Please don't include <acpi/acpi.h> directly, include <linux/acpi.h> instead."
  ^~~~~
/home/user/acpi_call/acpi_call.c: В функции «acpi_proc_write»:
/home/user/acpi_call/acpi_call.c:277:9: ошибка: неявная декларация функции «copy_from_user»; имелось в виду «raw_copy_from_user»? [-Werror=implicit-function-declaration]
     if (copy_from_user( input, buff, len )) {
         ^~~~~~~~~~~~~~
         raw_copy_from_user
/home/user/acpi_call/acpi_call.c: В функции «init_acpi_call»:
/home/user/acpi_call/acpi_call.c:355:53: ошибка: в передаче аргумента 4 «proc_create»: несовместимый тип указателя [-Werror=incompatible-pointer-types]
                                                     &proc_acpi_operations);
                                                     ^~~~~~~~~~~~~~~~~~~~~
In file included from /home/user/acpi_call/acpi_call.c:6:
./include/linux/proc_fs.h:64:24: замечание: ожидался тип «const struct proc_ops *», но аргумент имеет тип «struct file_operations *»
 struct proc_dir_entry *proc_create(const char *name, umode_t mode, struct proc_dir_entry *parent, const struct proc_ops *proc_ops);
                        ^~~~~~~~~~~
cc1: некоторые предупреждения считаются ошибками
make[2]: *** [scripts/Makefile.build:268: /home/user/acpi_call/acpi_call.o] Ошибка 1
make[1]: *** [Makefile:1683: /home/user/acpi_call] Ошибка 2

Исправление donaldpyro, :

''' [user@localhost acpi_call]$ make make -C /lib/modules/5.6.14-desktop-2.mga7/build M=/home/user/acpi_call modules make[1]: вход в каталог «/usr/src/kernel-5.6.14-desktop-2.mga7» CC [M] /home/user/acpi_call/acpi_call.o In file included from ./include/acpi/platform/acenv.h:163, from ./include/acpi/acpi.h:22, from /home/user/acpi_call/acpi_call.c:9: ./include/acpi/platform/aclinux.h:18:2: ошибка: #error «Please don’t include <acpi/acpi.h> directly, include <linux/acpi.h> instead.» #error «Please don’t include <acpi/acpi.h> directly, include <linux/acpi.h> instead.» ^~~~~ /home/user/acpi_call/acpi_call.c: В функции «acpi_proc_write»: /home/user/acpi_call/acpi_call.c:277:9: ошибка: неявная декларация функции «copy_from_user»; имелось в виду «raw_copy_from_user»? [-Werror=implicit-function-declaration] if (copy_from_user( input, buff, len )) { ^~~~~~~~~~~~~~ raw_copy_from_user /home/user/acpi_call/acpi_call.c: В функции «init_acpi_call»: /home/user/acpi_call/acpi_call.c:355:53: ошибка: в передаче аргумента 4 «proc_create»: несовместимый тип указателя [-Werror=incompatible-pointer-types] &proc_acpi_operations); ^~~~~~~~~~~~~~~~~~~~~ In file included from /home/user/acpi_call/acpi_call.c:6: ./include/linux/proc_fs.h:64:24: замечание: ожидался тип «const struct proc_ops *», но аргумент имеет тип «struct file_operations *» struct proc_dir_entry *proc_create(const char *name, umode_t mode, struct proc_dir_entry *parent, const struct proc_ops *proc_ops); ^~~~~~~~~~~ cc1: некоторые предупреждения считаются ошибками make[2]: *** [scripts/Makefile.build:268: /home/user/acpi_call/acpi_call.o] Ошибка 1 make[1]: *** [Makefile:1683: /home/user/acpi_call] Ошибка 2 '''

Исходная версия donaldpyro, :

[code] [user@localhost acpi_call]$ make make -C /lib/modules/5.6.14-desktop-2.mga7/build M=/home/user/acpi_call modules make[1]: вход в каталог «/usr/src/kernel-5.6.14-desktop-2.mga7» CC [M] /home/user/acpi_call/acpi_call.o In file included from ./include/acpi/platform/acenv.h:163, from ./include/acpi/acpi.h:22, from /home/user/acpi_call/acpi_call.c:9: ./include/acpi/platform/aclinux.h:18:2: ошибка: #error «Please don’t include <acpi/acpi.h> directly, include <linux/acpi.h> instead.» #error «Please don’t include <acpi/acpi.h> directly, include <linux/acpi.h> instead.» ^~~~~ /home/user/acpi_call/acpi_call.c: В функции «acpi_proc_write»: /home/user/acpi_call/acpi_call.c:277:9: ошибка: неявная декларация функции «copy_from_user»; имелось в виду «raw_copy_from_user»? [-Werror=implicit-function-declaration] if (copy_from_user( input, buff, len )) { ^~~~~~~~~~~~~~ raw_copy_from_user /home/user/acpi_call/acpi_call.c: В функции «init_acpi_call»: /home/user/acpi_call/acpi_call.c:355:53: ошибка: в передаче аргумента 4 «proc_create»: несовместимый тип указателя [-Werror=incompatible-pointer-types] &proc_acpi_operations); ^~~~~~~~~~~~~~~~~~~~~ In file included from /home/user/acpi_call/acpi_call.c:6: ./include/linux/proc_fs.h:64:24: замечание: ожидался тип «const struct proc_ops *», но аргумент имеет тип «struct file_operations *» struct proc_dir_entry *proc_create(const char *name, umode_t mode, struct proc_dir_entry *parent, const struct proc_ops *proc_ops); ^~~~~~~~~~~ cc1: некоторые предупреждения считаются ошибками make[2]: *** [scripts/Makefile.build:268: /home/user/acpi_call/acpi_call.o] Ошибка 1 make[1]: *** [Makefile:1683: /home/user/acpi_call] Ошибка 2 [/code]