我在试着交叉编译ARM的星号。
当我交叉编译强制模块(如sqlite3、ncurse和openssl )时,当交叉编译星号和它们各自的选项- with 3、--with with和-with.时,一切都很好。
但当我试图把dahdi包括进来的时候,什么都没有实现。当--with-dahdi=$(DAHDI_DIR)/linux时发生了这种情况:
checking for tone_zone_find_by_num in -ltonezone...no
checking for tone_zone_find in -ltonezone... no我知道,当它能检查音调区,然后寻找达赫迪/托内松时,它就走对了。然后,我没有看到错误,但是在运行chan_dahdi时不能选择make menuconfig。
当--with-dahdi=$(DAHDI_BUILD_RESULT_DIR)时发生了这种情况:
checking for mandatory modules: CRYPTO DAHDI NCURSES SQLITE3 OPENSSL... fail
configure: ***
configure: *** The DAHDI installation appears to be missing or broken.
configure: *** Either correct the installation, or run configure
configure: *** including --without-dahdi.注意,在构建dahdi时,$(DAHDI_BUILD_RESULT_DIR)包含了我的结果,假设我正确地完成了它,因为这是结果中的驱动程序之一:
$(DAHDI_BUILD_RESULT_DIR)/lib/modules/3.8.13/dahdi/dahdi.ko: ELF 32-bit LSB relocatable, ARM, EABI5 version 1 (SYSV), BuildID[sha1]=2b16a606c922ca5f10288dba98f2b365e8316748, not stripped在我的过程中使用的东西:
如果有人有想法,或知道如何交叉编译星号与dahdi,您的帮助将不胜感激。
最好的尊重。
洛伊当
发布于 2015-05-05 20:57:42
查看asterisk的configure.ac,它检查dahdi完成的dahdi-tools部分(用户空间),dahdi-linux部分(内核-模块)并不需要编译。确保头文件安装在正确的位置,通常是/usr/include。
发布于 2015-05-13 04:08:26
我要感谢@viktike帮助我摆脱困境。在运行星号的CFLAGS配置脚本时,将指向DAHDI C头文件,将LDFLAGS指向lib文件作为参数,很好地解决了我的问题。
./configure [other argument] CFLAGS="-g -I/home/thanhloi/workspace/asterisk/dahdi-linux-complete-2.10.1+2.10.1/RESULT/usr/include/" LDFLAGS="-L/home/thanhloi/workspace/asterisk/dahdi-linux-complete-2.10.1+2.10.1/RESULT/usr/lib/ -lpthread -ldl"星号然后配置并安装了dahdi。
最好的尊重
洛伊当
https://stackoverflow.com/questions/30027121
复制相似问题