DAHDI无法在Linux Kernel 3.8.0-29-generic中编译

时间:2013-10-29 05:24:33

标签: compiler-errors linux-kernel version asterisk

我下载了 DAHDI 2.6.1 + 2.6.1 Linux Kernel 3.8.0-29-generic 的源代码。

当我输入sudo apt-get install linux-headers-$(uname -r)来安装Linux内核头文件时,我得到了如下所示的消息:

Reading package lists... Done
Building dependency tree
Reading state information... Done
linux-headers-3.8.0-29-generic is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 2 not upgraded.

当我尝试在我的UBUNTU服务器上编译和安装DAHDI时,我遇到了问题。它显示下面显示的消息:

/home/asteriskpbx/src/asterisk-complete/dahdi/2.6.1+2.6.1/linux/drivers/dahdi/wctdm.c:2604:22: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'wctdm_init_one'

/home/asteriskpbx/src/asterisk-complete/dahdi/2.6.1+2.6.1/linux/drivers/dahdi/wctdm.c:289:22: warning: 'ifaces' defined but not used [-Wunused-variable]

/home/asteriskpbx/src/asterisk-complete/dahdi/2.6.1+2.6.1/linux/drivers/dahdi/wctdm.c:2592:13: warning: 'wctdm-reset_tdm' defined but not used [-Wunused-function]

依旧......

最后,它会显示:

cc1: some warnings being treated as errors
make[3] : *** [/home/asteriskpbx/src/asterisk-complete/dahdi/2.6.1+2.6.1/linux/drivers/dahdi/wctdm.o] Error 1
make[2] : *** [_module_/home/asteriskpbx/src/asterisk-complete/dahdi/2.6.1+2.6.1/linux/drivers/dahdi] Error 2
make[2] : Leaving directory '/usr/src/linux-headers-3.8.0-29-generic'
make[1] : *** [modules] Error 2
make[1] : Leaving directory '/home/asteriskpbx/src/asterisk-complete/dahdi/2.6.1+2.6.1/linux'
make: *** [all] Error 2

2 个答案:

答案 0 :(得分:0)

我尝试从源代码构建时遇到了同样的问题。我从SVN存储库中查看了最新版本的dahdi。不幸的是,最新版本是2.6.1 + 2.6.1。转到主站点并下载最新版本:

wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gzenter code here

解压缩,然后尝试" make all"再次命令。

答案 1 :(得分:-1)

首先,错误是你的日志。所以你没有提供错误。

最可能的问题是你的问题太老了dahdi太新内核了。解决方案 - 使用最新 dahdi,现在是2.7.0。

如果您不需要驱动程序,也可以从makefile tdm卡中删除。

如果您是新手,我非常建议您使用ubuntu软件包,而不是专家工作(编译星号)。