我试图为 Armhf 平台交叉编译星号。
我正在使用 g++-arm-linux-gnueabihf && gcc-arm-linux-gnueabihf 包来交叉编译 Asterisk,有 2 个先决条件:
SQlite3 :
./configure --prefix=/usr/arm-linux-gnueabihf --host=arm-linux-gnueabihfCC=arm-linux-gnueabihf-gcc 制作和制作安装
诅咒 :
./configure --host=arm-linux-gnueabihf --prefix=/usr/arm-linux-gnueabihfCXX=arm-linux-gnueabihf-g++ 制作和制作安装
当我交叉编译星号时:
./configure --host=arm-linux-gnueabihfCC=arm-linux-gnueabihf-gcc --prefix=MY_RESULT_DEST_DIR --disable-xmldoc --build=i686-pc-linux-gnu 制作菜单选择 && 制作 &&&制作安装
它工作得很好,但我不明白的是为什么配置脚本识别我的 ncurses && sqlite3 结果目录?
当我在特定目录上安装 ncurses 和 sqlite3,然后用 2 个参数配置 asterisk 源时出现错误 --with-ncurses &&--with-sqlite3,
./configure --host=arm-linux-gnueabihfCC=arm-linux-gnueabihf-gcc --prefix=MY_RESULT_DEST_DIR --disable-xmldoc --build=i686-pc-linux-gnu --with-ncurses=NCURSES_RESULT --with-sqlite3=SQLITE3_RESULT
它适用于配置但失败,并且以下错误与 make
在 -ltermcap...不
在 -ltinfo 中检查 tgetent...不
在 -lcurses 中检查 tgetent...不
在 -lncurses 中检查 tgetent...不
配置:错误:找不到
术语帽支持 make[1]: * [editline/libedit.a] 错误 1
制造: * [主要] 错误 2
那么,我应该怎么做才能解决这个问题呢?任何帮助将不胜感激。
提前
致谢党雷
是的,谢谢你。
我确实通过将 ac_cv_lib_$ac_lib_var 转换为 yes 来编辑主/编辑行/配置文件,以在运行 make 时绕过术语上限检查,并且它一直有效。
if { (eval echo configure:1282: "$ac_link") 1>&5; (eval $ac_link) 2>&5; } && t$
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
eval "ac_cv_lib_$ac_lib_var=yes"
fi
你应该安装 pkgconfig 或为你手动路径更改 Makefile
请注意,星号使文件未针对您的体系结构进行测试。
但它是开源的,所以你是免费测试,做改变和提交。或者雇用可以做到这一点的人。