asterisk / dahdi-linux

This is the official dahdi-linux repository. All issues and PR should be raised here.
GNU General Public License v2.0
47 stars 69 forks source link

Bug : dahdi compilation error in rocky linux 9.2 #42

Open aakash-rr opened 9 months ago

aakash-rr commented 9 months ago

Components/Modules:

Dahdi

Operating Environment

Os - rocky linux 9.2 Kernel version - kernel-5.14.0-284.25.1.el9_2.x86_64 Dahdi version - 3.2.0

Issue Description

Whenever we try to install dahdi in rocky linux 9.2 we are getting certain compilation errors . Errors:

stdbool.h is not available in Rocky Linux 9.2 with Kernel 5.14. Compilation failures are related to the netif_napi_add function. Compilation failures are related to the function 'PDE_DATA'. Installation steps:

cd /usr/src/ tar zxvf dahdi-linux-complete-3.2.0+3.2.0.tar.gz cd dahdi-linux-complete-3.2.0+3.2.0 make && make install && make install-config

Relevant log output Logs:

linux/drivers/dahdi/wctc4xxp/base.c: In function ‘wctc4xxp_net_register’: linux/drivers/dahdi/wctc4xxp/base.c:665:9: error: too many arguments to function ‘netif_napi_add’ 665 | netif_napi_add(netdev, &wc->napi, &wctc4xxp_poll, 64); | ^~~~~~ In file included from ./include/net/inet_sock.h:19, from ./include/linux/udp.h:16, from /linux/drivers/dahdi/wctc4xxp/base.c:38: ./include/linux/netdevice.h:2519:1: note: declared here 2519 | netif_napi_add(struct net_device dev, struct napi_struct napi, | ^~~~~~

linux/drivers/dahdi/xpp/xbus-core.c:1842:50: error: implicit declaration of function ‘PDE_DATA’; did you mean ‘NODE_DATA’? [-Werror=implicit-function-declaration] 1842 | return single_open(file, xbus_proc_show, PDE_DATA(inode)); ^~~~ | NODE_DATA

make all make -C linux all make[1]: Entering directory '/usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux' make -C drivers/dahdi/firmware firmware-loaders make[2]: Entering directory '/usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi/firmware' make[2]: Leaving directory '/usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi/firmware' make -C /lib/modules/5.14.0-284.25.1.el9_2.x86_64/build M=/usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi DAHDI_INCLUDE=/usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/include DAHDI_MODULES_EXTRA=" " HOTPLUG_FIRMWARE=yes modules DAHDI_BUILD_ALL=m make[2]: Entering directory '/usr/src/kernels/5.14.0-284.25.1.el9_2.x86_64' CC [M] /usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi/wct4xxp/base.o /usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi/wct4xxp/base.c:49:10: fatal error: stdbool.h: No such file or directory 49 | #include | ^~~ compilation terminated. make[4]: [scripts/Makefile.build:321: /usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi/wct4xxp/base.o] Error 1 make[3]: [scripts/Makefile.build:607: /usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi/wct4xxp] Error 2 make[2]: [Makefile:1923: /usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux/drivers/dahdi] Error 2 make[2]: Leaving directory '/usr/src/kernels/5.14.0-284.25.1.el9_2.x86_64' make[1]: [Makefile:74: modules] Error 2 make[1]: Leaving directory '/usr/src/dahdi-linux-complete-3.2.0+3.2.0/linux' make: *** [Makefile:9: all] Error 2 'make all' failed with 512.

InterLinked1 commented 9 months ago

DAHDI 3.2.0 is not supported. Install DAHDI Linux 3.3.0

aakash-rr commented 9 months ago

removed old dahdi using make clean and make distclean Installed the new 3.3.0 dahdi and still facing the same issue.

CC [M] /usr/src/dahdi-linux-complete-3.3.0+3.3.0/linux/drivers/dahdi/wct4xxp/base.o /usr/src/dahdi-linux-complete-3.3.0+3.3.0/linux/drivers/dahdi/wct4xxp/base.c:49:10: fatal error: stdbool.h: No such file or directory 49 | #include | ^~~ compilation terminated. make[4]: [scripts/Makefile.build:299: /usr/src/dahdi-linux-complete-3.3.0+3.3.0/linux/drivers/dahdi/wct4xxp/base.o] Error 1 make[3]: [scripts/Makefile.build:585: /usr/src/dahdi-linux-complete-3.3.0+3.3.0/linux/drivers/dahdi/wct4xxp] Error 2 make[2]: [Makefile:1928: /usr/src/dahdi-linux-complete-3.3.0+3.3.0/linux/drivers/dahdi] Error 2 make[2]: Leaving directory '/usr/src/kernels/5.14.0-362.8.1.el9_3.x86_64' make[1]: [Makefile:74: modules] Error 2 make[1]: Leaving directory '/usr/src/dahdi-linux-complete-3.3.0+3.3.0/linux' make: *** [Makefile:9: all] Error 2

InterLinked1 commented 9 months ago

Install DAHDI Linux and DAHDI Tools separately. I doubt DAHDI Linux complete is supported or maintained anymore.

If that doesn't work, does it work if you install using PhreakScript? https://github.com/InterLinked1/phreakscript

aakash-rr commented 9 months ago

Installing them separately also , it is showing the same error.

CC [M] /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi/oct612x/apilib/llman/octapi_llman.o CC [M] /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi/oct612x/oct612x-user.o LD [M] /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi/oct612x/oct612x.o CC [M] /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi/wct4xxp/base.o /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi/wct4xxp/base.c:49:10: fatal error: stdbool.h: No such file or directory 49 | #include | ^~~ compilation terminated. make[3]: [scripts/Makefile.build:299: /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi/wct4xxp/base.o] Error 1 make[2]: [scripts/Makefile.build:585: /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi/wct4xxp] Error 2 make[1]: [Makefile:1928: /usr/src/dahdi/dahdi-linux-3.3.0/drivers/dahdi] Error 2 make[1]: Leaving directory '/usr/src/kernels/5.14.0-362.8.1.el9_3.x86_64' make: [Makefile:74: modules] Error 2

aakash-rr commented 9 months ago

We are using asterisk 16 version but phreakscript is not tested with older asterisk versions. help us with the installation steps

InterLinked1 commented 9 months ago

We are using asterisk 16 version but phreakscript is not tested with older asterisk versions. help us with the installation steps

Version 16 is completely EOL. You could always try --version=16, but I suggest you use a newer version of Asterisk anyways.

aakash-rr commented 9 months ago

Is there a command to install asterisk16 and dahdi using phreakscript

InterLinked1 commented 9 months ago

Please help me with command to install asterisk16 and dahdi using phreakscript

I already told you what you needed to do. phreaknet install --dahdi --version=16.

However, version 16 is not supported. Don't ask for help if it doesn't work.