Asterisk社区官方的说法
编译安装Asterisk 21.2.0版本
按照官网文档,原则上只需要如下几步:
./contrib/scripts/install_prereq install
./configure
make
make install
make samples
make config
然而买家秀是这样的
实际上,在./configure
环节,就遇到了问题,如下提示
checking for openssl >= 1.1.0… yes
checking for embedded pjproject (may have to download)… configuring
[pjproject] Downloading https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.14/pjproject-2.14.tar.bz2 to /tmp/pjproject-2.14.tar.bz2
[pjproject] Retrying download
[pjproject] Downloading https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.14/pjproject-2.14.tar.bz2 to /tmp/pjproject-2.14.tar.bz2
make: *** [Makefile:102: /tmp/pjproject-2.14.tar.bz2] Error 4
failed
configure: Unable to configure third-party/pjproject
configure: error: Re-run the ./configure command with ‘NOISY_BUILD=yes’ appended to see error details.
提示说下载不了pjproject-2.14。
是的,Asterisk 21.2.0版本开始使用pjproject 2.14版本了。每个Asterisk对应的pjproject1版本是不一样的。
pjproject-2.14下载不了的问题如何解决
https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.14/pjproject-2.14.tar.bz2
分析原因:github这个链接下载不到,可能是三个方面原因:1,链接写错了;2,链接文件走丢了;3,dns不对; 4,其他网络问题。
解决办法:
- 找到正确的链接,然后修改configure文件,重新配置
- 下载这个链接文件到本地
- 修改DNS试试
- 换个网络。
先试试链接对不对,尝试把文件下载到本地:
wget https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.14/pjproject-2.14.tar.bz2 --no-check-certificate
正在解析主机 raw.githubusercontent.com (raw.githubusercontent.com)… 0.0.0.0, ::
正在连接 raw.githubusercontent.com (raw.githubusercontent.com)|0.0.0.0|:443… 已连接。
警告: 无法验证 raw.githubusercontent.com 的由 “/C=–/ST=SomeState/L=SomeCity/O=SomeOrganization/OU=SomeOrganizationalUnit/CN=localhost/emailAddress=root@localhost” 颁发的证书:
无法本地校验颁发者的权限。
警告: 证书通用名 “localhost” 与所要求的主机名 “raw.githubusercontent.com” 不符。
已发出 HTTP 请求,正在等待回应… 404 Not Found
看来真的是链接走丢了。
这个时候,网络通信公司的专业优势就出来了,办公室的网络比较多,换个网络是比较简单的办法。而且很幸运的是,切换到天威网络之后,这个问题随之迎刃而解。
这说明链接是正确的。尝试将这个文件
pjproject-2.14.tar.bz2
下载到本地,然后将网络断开,重新 configure。也可以顺利通过。