Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install error on Debian 12 #43

Open
arut-plus opened this issue Jan 8, 2025 · 7 comments
Open

Install error on Debian 12 #43

arut-plus opened this issue Jan 8, 2025 · 7 comments

Comments

@arut-plus
Copy link

➜ cat /proc/version
Linux version 6.1.0-28-amd64 ([email protected]) (gcc-12 (Debian 12.2.0-14) 12.2
.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-2
2)
➜ gcc --version
gcc (Debian 12.2.0-14) 12.2.0
➜ rustup --version
rustup 1.27.1 (54dd3d00f 2024-04-24)
info: This is the version for the rustup toolchain manager, not the rustc compiler.
info: The currently active `rustc` version is `rustc 1.83.0 (90b35a623 2024-11-26)`
➜ cargo --version
cargo 1.83.0 (5ffbef321 2024-10-29)

Installing:

➜ curl -fsSL https://www.maccel.org/install.sh | sudo -E env "PATH=$PATH" sh
sh: 61: [[: not found

Fetching the maccel github repo
sh: 51: [[: not found
Cloning into '.'...
remote: Enumerating objects: 97, done.
remote: Counting objects: 100% (97/97), done.
remote: Compressing objects: 100% (89/89), done.
remote: Total 97 (delta 4), reused 57 (delta 2), pack-reused 0 (from 0)
Receiving objects: 100% (97/97), 2.20 MiB | 7.33 MiB/s, done.
Resolving deltas: 100% (4/4), done.

Installing the driver (kernel module)
rm -rf `pwd`/driver/.*.cmd `pwd`/driver/*.ko `pwd`/driver/*.mod `pwd`/driver/*.mod.* `pwd`/driver/*.symvers `pwd`/driver/*.order `pwd`/driver/*.o
cargo clean --manifest-path=cli/Cargo.toml
     Removed 0 files
cargo clean --manifest-path=cli/usbmouse/Cargo.toml
     Removed 0 files
rmmod: ERROR: Module maccel is not currently loaded
make: *** [Makefile:35: uninstall] Error 1
sh: 88: [[: not found
make CC=gcc EXTRA_CFLAGS= -C /lib/modules/`uname -r`/build M=`pwd`/driver
make[1]: Entering directory '/usr/src/linux-headers-6.1.0-28-amd64'
  CC [M]  /opt/maccel/driver/maccel.o
In file included from /opt/maccel/driver/././accelk.h:4,
                 from /opt/maccel/driver/./input_handler.h:1,
                 from /opt/maccel/driver/maccel.c:1:
/opt/maccel/driver/././accel.h: In function ‘sensitivity’:
/opt/maccel/driver/././accel.h:29: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   29 |   dbg("accel    %s", fixedpt_cstr(param_accel, 6));
      |
/opt/maccel/driver/././accel.h:29: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:29: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:39: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   39 |   dbg("sens     %s", fixedpt_cstr(sens, 6));
      |
/opt/maccel/driver/././accel.h:39: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:39: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:40: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   40 |   dbg("sens cap %s", fixedpt_cstr(output_cap, 6));
      |
/opt/maccel/driver/././accel.h:40: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:40: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h: In function ‘input_speed’:
/opt/maccel/driver/././accel.h:54: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   54 |   dbg("distance (in)              %s", fixedpt_cstr(distance, 6));
      |
/opt/maccel/driver/././accel.h:54: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:54: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:59: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   59 |       fixedpt_cstr(fixedpt_fromint(polling_interval), 6));
      |
/opt/maccel/driver/././accel.h:59: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:59: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:60: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   60 |   dbg("speed (in)                 %s", fixedpt_cstr(speed_in, 6));
      |
/opt/maccel/driver/././accel.h:60: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:60: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h: In function ‘f_accelerate’:
/opt/maccel/driver/././accel.h:78: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   78 |   dbg("in                        (%d, %d)", x, y);
      |
/opt/maccel/driver/././accel.h:78: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:78: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:79: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   79 |   dbg("in: x (fixedpt conversion) %s", fixedpt_cstr(dx, 6));
      |
/opt/maccel/driver/././accel.h:79: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:79: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:80: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   80 |   dbg("in: y (fixedpt conversion) %s", fixedpt_cstr(dy, 6));
      |
/opt/maccel/driver/././accel.h:80: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:80: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:86: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   86 |   dbg("sens %s", fixedpt_cstr(sens, 6));
      |
/opt/maccel/driver/././accel.h:86: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:86: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:94: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   94 |   dbg("out: x                     %s", fixedpt_cstr(dx_out, 6));
      |
/opt/maccel/driver/././accel.h:94: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:94: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:95: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   95 |   dbg("out: y                     %s", fixedpt_cstr(dy_out, 6));
      |
/opt/maccel/driver/././accel.h:95: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:95: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:100: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
  100 |   dbg("out (int conversion)      (%d, %d)", result.x, result.y);
      |
/opt/maccel/driver/././accel.h:100: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:100: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:106: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
  106 |       fixedpt_cstr(carry_x, 6));
      |
/opt/maccel/driver/././accel.h:106: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h:106: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
In file included from /opt/maccel/driver/./input_handler.h:2:
/opt/maccel/driver/./input_echo.h: In function ‘read’:
/opt/maccel/driver/./input_echo.h:37:7: error: implicit declaration of function ‘copy_to_user’ [-Werror=implicit-function-declaration]
   37 |       copy_to_user(user_buffer, be_bytes_for_int, sizeof(be_bytes_for_int));
      |       ^~~~~~~~~~~~
/opt/maccel/driver/./input_echo.h: At top level:
/opt/maccel/driver/./input_echo.h:44:8: error: variable ‘fops’ has initializer but incomplete type
   44 | struct file_operations fops = {.owner = THIS_MODULE, .read = read};
      |        ^~~~~~~~~~~~~~~
/opt/maccel/driver/./input_echo.h:44:33: error: ‘struct file_operations’ has no member named ‘owner’
   44 | struct file_operations fops = {.owner = THIS_MODULE, .read = read};
      |                                 ^~~~~
In file included from /usr/src/linux-headers-6.1.0-28-common/include/linux/linkage.h:7,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/printk.h:8,
                 from /opt/maccel/driver/././dbg.h:8,
                 from /opt/maccel/driver/././accel.h:4:
/usr/src/linux-headers-6.1.0-28-common/include/linux/export.h:27:21: warning: excess elements in struct initializer
   27 | #define THIS_MODULE (&__this_module)
      |                     ^
/opt/maccel/driver/./input_echo.h:44:41: note: in expansion of macro ‘THIS_MODULE’
   44 | struct file_operations fops = {.owner = THIS_MODULE, .read = read};
      |                                         ^~~~~~~~~~~
/usr/src/linux-headers-6.1.0-28-common/include/linux/export.h:27:21: note: (near initialization for ‘fops’)
   27 | #define THIS_MODULE (&__this_module)
      |                     ^
/opt/maccel/driver/./input_echo.h:44:41: note: in expansion of macro ‘THIS_MODULE’
   44 | struct file_operations fops = {.owner = THIS_MODULE, .read = read};
      |                                         ^~~~~~~~~~~
/opt/maccel/driver/./input_echo.h:44:55: error: ‘struct file_operations’ has no member named ‘read’
   44 | struct file_operations fops = {.owner = THIS_MODULE, .read = read};
      |                                                       ^~~~
/opt/maccel/driver/./input_echo.h:44:62: warning: excess elements in struct initializer
   44 | struct file_operations fops = {.owner = THIS_MODULE, .read = read};
      |                                                              ^~~~
/opt/maccel/driver/./input_echo.h:44:62: note: (near initialization for ‘fops’)
/opt/maccel/driver/./input_echo.h: In function ‘create_char_device’:
/opt/maccel/driver/./input_echo.h:48:9: error: implicit declaration of function ‘alloc_chrdev_region’; did you mean ‘alloc_free_mem_region’? [-Werror=implicit-function-declaration]
   48 |   err = alloc_chrdev_region(&device_number, 0, 1, "maccel");
      |         ^~~~~~~~~~~~~~~~~~~
      |         alloc_free_mem_region
/opt/maccel/driver/./input_echo.h:57:39: error: macro "class_create" requires 2 arguments, but only 1 given
   57 |   device_class = class_create("maccel");
      |                                       ^
In file included from /usr/src/linux-headers-6.1.0-28-common/include/linux/device.h:31,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/cdev.h:8,
                 from /opt/maccel/driver/./input_echo.h:5:
/usr/src/linux-headers-6.1.0-28-common/include/linux/device/class.h:273: note: macro "class_create" defined here
  273 | #define class_create(owner, name)               \
      |
/opt/maccel/driver/./input_echo.h:57:18: error: ‘class_create’ undeclared (first use in this function); did you mean ‘class_compat’?
   57 |   device_class = class_create("maccel");
      |                  ^~~~~~~~~~~~
      |                  class_compat
/opt/maccel/driver/./input_echo.h:57:18: note: each undeclared identifier is reported only once for each function it appears in
/opt/maccel/driver/./input_echo.h:69:3: error: implicit declaration of function ‘unregister_chrdev_region’ [-Werror=implicit-function-declaration]
   69 |   unregister_chrdev_region(device_number, 1);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/src/linux-headers-6.1.0-28-common/include/linux/sched/task.h:11,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/sched/signal.h:9,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/rcuwait.h:6,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/percpu-rwsem.h:7,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/fs.h:33,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/input.h:20,
                 from /usr/src/linux-headers-6.1.0-28-common/include/linux/hid.h:24,
                 from /opt/maccel/driver/./input_handler.h:3:
/usr/src/linux-headers-6.1.0-28-common/include/linux/uaccess.h: At top level:
/usr/src/linux-headers-6.1.0-28-common/include/linux/uaccess.h:166:1: error: conflicting types for ‘copy_to_user’; have ‘long unsigned int(void *, const void *, long unsigned int)’
  166 | copy_to_user(void __user *to, const void *from, unsigned long n)
      | ^~~~~~~~~~~~
/opt/maccel/driver/./input_echo.h:37:7: note: previous implicit declaration of ‘copy_to_user’ with type ‘int()’
   37 |       copy_to_user(user_buffer, be_bytes_for_int, sizeof(be_bytes_for_int));
      |       ^~~~~~~~~~~~
/usr/src/linux-headers-6.1.0-28-common/include/linux/fs.h:2910:13: warning: conflicting types for ‘unregister_chrdev_region’; have ‘void(dev_t,  unsigned int)’ {aka ‘void(unsigned int,  unsigned int)’}
 2910 | extern void unregister_chrdev_region(dev_t, unsigned);
      |             ^~~~~~~~~~~~~~~~~~~~~~~~
/opt/maccel/driver/./input_echo.h:69:3: note: previous implicit declaration of ‘unregister_chrdev_region’ with type ‘void(dev_t,  unsigned int)’ {aka ‘void(unsigned int,  unsigned int)’}
   69 |   unregister_chrdev_region(device_number, 1);
      |   ^~~~~~~~~~~~~~~~~~~~~~~~
/opt/maccel/driver/./input_handler.h: In function ‘maccel_filter’:
/opt/maccel/driver/./input_handler.h:18: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   18 |     dbg("EV_REL => code %d, value %d", code, value);
      |
/opt/maccel/driver/./input_handler.h:18: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./input_handler.h:18: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./input_handler.h:33: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   33 |       dbg("EV_SYN => code %d", code);
      |
/opt/maccel/driver/./input_handler.h:33: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./input_handler.h:33: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./input_handler.h:36: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   36 |       dbg("accel: (%d, %d) -> (%d, %d)", x, y, accelerated.x, accelerated.y);
      |
/opt/maccel/driver/./input_handler.h:36: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./input_handler.h:36: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
In file included from /opt/maccel/driver/maccel.c:2:
/opt/maccel/driver/./usbmouse.h: In function ‘on_complete’:
/opt/maccel/driver/./usbmouse.h:40: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   40 |   dbg("name: %s", ctx->name);
      |
/opt/maccel/driver/./usbmouse.h:40: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./usbmouse.h:40: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./usbmouse.h:41: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
   41 |   dbg("phys: %s", ctx->phys);
      |
/opt/maccel/driver/./usbmouse.h:41: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/./usbmouse.h:41: warning: ignoring ‘#pragma clang diagnostic’ [-Wunknown-pragmas]
/opt/maccel/driver/././accel.h: At top level:
/opt/maccel/driver/././accel.h:40:22: warning: ‘fixedpt_cstr’ is static but used in inline function ‘sensitivity’ which is not static
   40 |   dbg("sens cap %s", fixedpt_cstr(output_cap, 6));
      |                      ^~~~~~~~~~~~
/usr/src/linux-headers-6.1.0-28-common/include/linux/printk.h:429:33: note: in definition of macro ‘printk_index_wrap’
  429 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
      |                                 ^~~~~~~~~~~
/opt/maccel/driver/././dbg.h:20:7: note: in expansion of macro ‘printk’
   20 |       printk(KERN_INFO "%s:%d:%s(): " #fmt "\n", __FILE__, __LINE__, __func__, \
      |       ^~~~~~
/opt/maccel/driver/././dbg.h:9:23: note: in expansion of macro ‘dbg_k’
    9 | #define dbg(fmt, ...) dbg_k(fmt, __VA_ARGS__)
      |                       ^~~~~
/opt/maccel/driver/././accel.h:40:3: note: in expansion of macro ‘dbg’
   40 |   dbg("sens cap %s", fixedpt_cstr(output_cap, 6));
      |   ^~~
/opt/maccel/driver/././accel.h:39:22: warning: ‘fixedpt_cstr’ is static but used in inline function ‘sensitivity’ which is not static
   39 |   dbg("sens     %s", fixedpt_cstr(sens, 6));
      |                      ^~~~~~~~~~~~
/usr/src/linux-headers-6.1.0-28-common/include/linux/printk.h:429:33: note: in definition of macro ‘printk_index_wrap’
  429 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
      |                                 ^~~~~~~~~~~
/opt/maccel/driver/././dbg.h:20:7: note: in expansion of macro ‘printk’
   20 |       printk(KERN_INFO "%s:%d:%s(): " #fmt "\n", __FILE__, __LINE__, __func__, \
      |       ^~~~~~
/opt/maccel/driver/././dbg.h:9:23: note: in expansion of macro ‘dbg_k’
    9 | #define dbg(fmt, ...) dbg_k(fmt, __VA_ARGS__)
      |                       ^~~~~
/opt/maccel/driver/././accel.h:39:3: note: in expansion of macro ‘dbg’
   39 |   dbg("sens     %s", fixedpt_cstr(sens, 6));
      |   ^~~
/opt/maccel/driver/././accel.h:37:24: warning: ‘fixedpt_mul’ is static but used in inline function ‘sensitivity’ which is not static
   37 |   fixedpt output_cap = fixedpt_mul(param_output_cap, param_sens_mult);
      |                        ^~~~~~~~~~~
/opt/maccel/driver/././accel.h:35:10: warning: ‘fixedpt_mul’ is static but used in inline function ‘sensitivity’ which is not static
   35 |   sens = fixedpt_mul(sens, param_sens_mult);
      |          ^~~~~~~~~~~
In file included from /opt/maccel/driver/././accel.h:5:
/opt/maccel/driver/././accel.h:32:37: warning: ‘fixedpt_mul’ is static but used in inline function ‘sensitivity’ which is not static
   32 |     sens = fixedpt_add(FIXEDPT_ONE, fixedpt_mul((param_accel), input_speed));
      |                                     ^~~~~~~~~~~
/opt/maccel/driver/././fixedptc.h:112:35: note: in definition of macro ‘fixedpt_add’
  112 | #define fixedpt_add(A, B) ((A) + (B))
      |                                   ^
/opt/maccel/driver/././accel.h:29:22: warning: ‘fixedpt_cstr’ is static but used in inline function ‘sensitivity’ which is not static
   29 |   dbg("accel    %s", fixedpt_cstr(param_accel, 6));
      |                      ^~~~~~~~~~~~
/usr/src/linux-headers-6.1.0-28-common/include/linux/printk.h:429:33: note: in definition of macro ‘printk_index_wrap’
  429 |                 _p_func(_fmt, ##__VA_ARGS__);                           \
      |                                 ^~~~~~~~~~~
/opt/maccel/driver/././dbg.h:20:7: note: in expansion of macro ‘printk’
   20 |       printk(KERN_INFO "%s:%d:%s(): " #fmt "\n", __FILE__, __LINE__, __func__, \
      |       ^~~~~~
/opt/maccel/driver/././dbg.h:9:23: note: in expansion of macro ‘dbg_k’
    9 | #define dbg(fmt, ...) dbg_k(fmt, __VA_ARGS__)
      |                       ^~~~~
/opt/maccel/driver/././accel.h:29:3: note: in expansion of macro ‘dbg’
   29 |   dbg("accel    %s", fixedpt_cstr(param_accel, 6));
      |   ^~~
cc1: some warnings being treated as errors
make[2]: *** [/usr/src/linux-headers-6.1.0-28-common/scripts/Makefile.build:255: /opt/maccel/driver/maccel.o] Error 1
make[1]: *** [/usr/src/linux-headers-6.1.0-28-common/Makefile:2034: /opt/maccel/driver] Error 2
make[1]: Leaving directory '/usr/src/linux-headers-6.1.0-28-amd64'
make: *** [Makefile:17: build] Error 2
@arut-plus
Copy link
Author

?

@Gnarus-G
Copy link
Owner

Can you try now?

@arut-plus
Copy link
Author

Can you try now?

Versions

➜ cat /proc/version
Linux version 6.1.0-28-amd64 ([email protected]) (gcc-12 (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Debian 6.1.119-1 (2024-11-22)
➜ gcc --version
gcc (Debian 12.2.0-14) 12.2.0
➜ rustup --version
rustup 1.27.1 (54dd3d00f 2024-04-24)
info: The currently active `rustc` version is `rustc 1.83.0 (90b35a623 2024-11-26)`
➜ cargo --version
cargo 1.83.0 (5ffbef321 2024-10-29)

Installation

➜ curl -fsSL https://www.maccel.org/install.sh | sudo -E env "PATH=$PATH" sh
sh: 66: [[: not found

Fetching the maccel github repo
sh: 56: [[: not found
Cloning into '.'...
remote: Enumerating objects: 101, done.
remote: Counting objects: 100% (101/101), done.
remote: Compressing objects: 100% (93/93), done.
remote: Total 101 (delta 4), reused 59 (delta 1), pack-reused 0 (from 0)
Receiving objects: 100% (101/101), 2.21 MiB | 6.84 MiB/s, done.
Resolving deltas: 100% (4/4), done.

Installing the driver (kernel module)
Sign command: /usr/lib/linux-kbuild-6.1/scripts/sign-file
Signing key: /var/lib/dkms/mok.key
Public certificate (MOK): /var/lib/dkms/mok.pub
Creating symlink /var/lib/dkms/maccel/0.2.1/source -> /usr/src/maccel-0.2.1

Building module:
Cleaning build area...
make -j16 KERNELRELEASE=6.1.0-28-amd64 KVER=6.1.0-28-amd64...(bad exit status: 2)
Error! Bad return status for module build on kernel: 6.1.0-28-amd64 (x86_64)
Consult /var/lib/dkms/maccel/0.2.1/build/make.log for more information.

Log

I'm attaching a log.
/var/lib/dkms/maccel/0.2.1/build/make.log: make.log

@Gnarus-G
Copy link
Owner

What shell are using for [[ not to be working?

@Gnarus-G
Copy link
Owner

Maybe your gcc version is just too low.

@arut-plus
Copy link
Author

What shell are using for [[ not to be working?

The syntax with two square brackets is not POSIX-compliant, so sh does not support it.
And the README specifies exactly that command for installation.

Of course, I also ran with bash, but that only got rid of the warnings about unsupported two square brackets, but it didn't solve the installation problem itself - the installation error is the same.


Maybe your gcc version is just too low.

The version of gcc, as I understand it, should correspond to the version with which the kernel was built.

@Gnarus-G
Copy link
Owner

Didn't know that about the brackets, weird that it always worked with sh for me.

Yes the main issue seems that we don't backwards compat with some older version gcc.

Thanks for the report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants