尝试从关联我已经下载了 dahdi 的软件包。但在执行
cd /usr/src/dahdi-linux-complete*
make && make install && make config
我的终端显示
[root@localhost dahdi-linux-complete-2.10.0+2.10.0]# make
make -C linux all
make[1]: Entering directory `/usr/src/dahdi-linux-complete-2.10.0+2.10.0/linux'
make -C drivers/dahdi/firmware firmware-loaders
make[2]: Entering directory `/usr/src/dahdi-linux-complete-2.10.0+2.10.0/linux/drivers/dahdi/firmware'
make[2]: Leaving directory `/usr/src/dahdi-linux-complete-2.10.0+2.10.0/linux/drivers/dahdi/firmware'
You do not appear to have the sources for the 2.6.32-431.29.2.el6.x86_64 kernel installed.
make[1]: *** [modules] Error 1
make[1]: Leaving directory `/usr/src/dahdi-linux-complete-2.10.0+2.10.0/linux'
make: *** [all] Error 2
uname -r 的输出
[root@localhost dahdi-linux-complete-2.10.0+2.10.0]# uname -r
2.6.32-431.29.2.el6.x86_64
我有内核源代码,那为什么它会显示这条消息 您似乎没有安装 2.6.32-431.29.2.el6.x86_64 内核的源代码。
我知道这个问题被问过很多次了。我试过这些方法,但都没能解决这个问题。我试过更新我的系统,但系统上没有提示要更新。
除了重新安装操作系统之外还有什么建议吗?
答案1
当然,这到处都有描述。如果你不想读,试试这个:
yum update -y
yum install kernel-devel -y
reboot
答案2
我检查了源代码并发现它看起来位于不同的位置。
第一次运行
yum install kernel-devel
reboot
诀窍如下
ln -s /usr/src/linux /usr/src/kernels/`uname -r`
例如在我的服务器中
[root@freepbx ~]# ls -l /usr/src
lrwxrwxrwx 1 root root 34 7 月 12 日 17:31 linux -> kernels/3.10.0-862.3.3.el7.x86_64/
答案3
使用 YUM 进行首次更新:
yum update
在 CentOS / RHEL 上安装内核头文件和内核开发文件:
yum install kernel-devel kernel-headers
重新启动并尝试重建 Asterisk / DAHDI 工具,如果仍然失败,请使用以下命令检查您的内核版本:
uname -r
然后检查链接的内核源:
cd /lib/modules/`uname -r`
使用以下命令检查符号链接:
ls -l
如果链接坏了,请使用以下方法修复:
ln -s /usr/src/kernels/(kernel-source-dir) build
https://itgala.xyz/你-do-not-appear-to-have-the-sources-for-kernel-installed/