我从http://downloads.asterisk.org/pub/telephony/asterisk/下载了Asterisk的源代码。
我正在尝试调用make
时从Ubuntu 16.04.1中的源代码编译错误:
./libasteriskssl.so: undefined reference to `CRYPTO_num_locks' collect2: error: ld returned 1 exit status Makefile:321: recipe for target 'asterisk' failed make[1]: * [asterisk] Error 1 Makefile:368: recipe for target 'main' failed make: * [main] Error 2
谢谢
答案 0 :(得分:1)
正如@arheops指出的那样,编译取决于操作系统的版本和星号本身的版本。以下工作在带有星号v14的Debian 9中
假设您在/ usr / src / asterisk中有源代码。所以,首先要做的事情。您必须下载依赖项:
# apt-get update
# apt-get install autoconf
# cd /usr/src/asterisk/contrib/scripts
# ./install_prereq install
然后,配置步骤:
# cd /usr/asterisk
# ./bootstrap.sh
# ./configure <your fancy options>
# make menuconfig
现在,编译阶段:
# make
安装可执行文件和库
# make install
安装配置模板
# make samples
安装服务
# make config
答案 1 :(得分:0)
您的星号版本不支持libcrypto / openssl版本,或者您已破坏openssl安装。
尝试使用不同的版本,作为参考,获取与您使用的源代码相同的RHEL / Centos版本。