What's causing this error? How to fix it?

[root@localhost dahdi-linux-3.4.0-rc1]# make
make -C drivers/dahdi/firmware firmware-loaders
make[1]: Entering directory ‘/usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/ firmware’
make[1]: Leaving directory ‘/usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/f irmware’
make -C /lib/modules/5.14.0-480.el9.x86_64/build M=/usr/local/src/dahdi-linux-3. 4.0-rc1/drivers/dahdi DAHDI_INCLUDE=/usr/local/src/dahdi-linux-3.4.0-rc1/include DAHDI_MODULES_EXTRA=" " HOTPLUG_FIRMWARE=yes modules DAHDI_BUILD_ALL=m
make[1]: Entering directory ‘/usr/src/kernels/5.14.0-480.el9.x86_64’
CC [M] /usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/wctdm24xxp/base.o
/usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/wctdm24xxp/base.c:233:27: error: macro “DEFINE_SEMAPHORE” requires 2 arguments, but only 1 given
233 | DEFINE_SEMAPHORE(ifacelock);
| ^
In file included from ./include/linux/fs.h:25,
from ./include/linux/compat.h:17,
from ./arch/x86/include/asm/ia32.h:8,
from ./arch/x86/include/asm/elf.h:10,
from ./include/linux/elf.h:6,
from ./include/linux/module.h:19,
from /usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/wctdm24xxp/base.c:43:
./include/linux/semaphore.h:34: note: macro “DEFINE_SEMAPHORE” defined here
34 | #define DEFINE_SEMAPHORE(_name, _n)
|
/usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/wctdm24xxp/base.c:233:1: warning: data definition has no type or storage class
233 | DEFINE_SEMAPHORE(ifacelock);
| ^~~~~~~~~~~~~~~~
/usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/wctdm24xxp/base.c:233:1: error: type defaults to ‘int’ in declaration of ‘DEFINE_SEMAPHORE’ [-Werror=implicit-int]
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:249: /usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/wctdm24xxp/base.o] Error 1
make[2]: *** [scripts/Makefile.build:502: /usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi/wctdm24xxp] Error 2
make[1]: *** [Makefile:1944: /usr/local/src/dahdi-linux-3.4.0-rc1/drivers/dahdi] Error 2
make[1]: Leaving directory ‘/usr/src/kernels/5.14.0-480.el9.x86_64’
make: *** [Makefile:74: modules] Error 2

Are you running Red Hat Enterprise Linux 9.x ? (What is ‘x’ ?)

Can you try on RHEL 8.y (maybe y=10 ?)

Also you might consider posting a new issue in dahdi-linux on GitHub as compile errors like this are generally something better handled there.

Hi…look, in recent years installing dahdi is increasingly complicated, so much so that I have to resort to refurbished machines to use distros where installing dahdi has never been a problem. Recently, on a Rocky Linux, with this link GitHub - InterLinked1/phreakscript: A utility to automate the installation, maintenance, and debugging of Asterisk/DAHDI, while integrating additional patches to provide the richest telephony experience I managed to install it.

This topic was automatically closed 31 days after the last reply. New replies are no longer allowed.