Build failure of 15.1.0

I was trying to upgrade to 15.1.0 by doing a clean install / build. I keep getting a failure about pjsip. I thought it might be an issue with 15 since it appears to download pjsip as needed so I tried 14.7 and got the same error. Can someone shed any light? I am running 14.6 but would like to upgrade to get all of the rtp fixes.

[pjproject] Downloading https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.6/pjproject-2.6.tar.bz2 to /tmp/pjproject-2.6.tar.bz2
[pjproject] Retrying download
[pjproject] Downloading https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.6/pjproject-2.6.tar.bz2 to /tmp/pjproject-2.6.tar.bz2
Makefile:119: recipe for target ‘/tmp/pjproject-2.6.tar.bz2’ failed
make: *** [/tmp/pjproject-2.6.tar.bz2] Error 4
make: *** Deleting file '/tmp/pjproject-2.6.tar.bz2’
failed

Can you please follow-up in that thread…
I am more than curious what the cause it. However, more, the information requested there is required.

It looks like either something is wonky in the install script or one of the Version 2.6 files has been removed from Github. I downloaded pjsip 2.6 from pjsip.org and manually created an md5 file. Then ran configure with the “with-externals-cache” as shown on the wiki. Make is now running.

Yes, that for sure. However, to isolate this issue the exact cause must be known. If you cannot provide that, please, give as many information as possible, for example your Linux distribution, its version, and whether that tar.bz2 is still in your tmp folder. Only then, somebody else is able to reproduce your issues. Only when reproducible, this somebody is able to isolate the cause.

Running Debian 8.4. I don’t think the file was left in the /tmp folder. The error message states that it deleted the file. I can’t see what is in the script but manually running
"wget https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.6/pjproject-2.6.tar.bz2" successfully downloads the file.

Manually Running “wget https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.6/MD5SUM.TXT” successfully creates a file named “MD5SUM.TXT” however, not one named “pjproject-2.6.md5” as is required.

Manually running “https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.6/pjproject-2.6.md5” fails.

edited After testing and closer examination of the wiki it looks like the install script may have the incorrect syntax for one or both wget commands. According to help for wget the correct syntax should be
"wget -O /tmp/pjproject-2.6.md5 https://raw.githubusercontent.com/asterisk/third-party/master/pjproject/2.6/MD5SUM.TXT"

Are you building on some low-memory device like a Raspberry Pi?

The script is in third-party/pjproject/Makefile. It reached the subroutine download_from_pjproject. From your log, it might not even tried to download the checksum, yet. But please, double-check. Rather, it looks like being run into that timeout. Are you running just make or did you add any parameters like make --jobs 2?

Building on a Beaglebone Black. Running a 16 gb flash. I was only running ./configure with no switches as shown on the Wiki for version 15. After looking at the Makefile I suspect you could be right about a timeout. When I manually run the wget command shown above I don’t see a noticeable delay. I don’t know how the DOWNLOAD_TIMEOUT command works though.

Could be a RAM issue as well. Mhm. Anyway, when you download the file manually, do you succeed with wget -q -O- --timeout=5?

wget times out with --dns-timeout=5. I would think a setting of 15 seconds would be safer. Does the “,60” set the retry to 60 seconds in your Makefile?

The 60 is not used in combination with wget, just with other tools. However, I wonder why a DNS query takes more than five seconds in your scenario. Any idea? Which value works for you?

I was wondering why myself. Just a guess but it looks like it takes around 6 seconds for my system. I’m using dsl and AT&T dns servers. I tried 10 seconds and it worked. I’m not sure but I think this failure was seen by someone else also.

Six seconds is far from normal, even with an PPPoE or DHCP handshake on-demand. Please, log the Internet traffic either directly via Wireshark or an Ethernet Switch (which offers Port Mirroring). Something is wrong, perhaps a IPv6 or DNSSEC issue.

Are you using SIP in Asterisk? SIP heavily relies on DNS and call-setups are going to suffer dramatically with such DNS delays. Therefore, this symptom should be investigated in more detail.

Yes. Using pjsip. FWIW, I don’t know what the default dns-timeout is for the wget command but when I leave off the --dns-timeout=5 and let it use the default it works without an issue. Sorry but I don’t have an old hub to test with and I don’t want to take the risk of setting up wireshark on the Beagle. When I load Ver 15 the next time I will just use the "with-externals-cache” switch and modify the Makefile before running. I haven’t had any problems with call setup ever as far as I can tell. Thanks

I am attaching debug output from the wget command. I don’t see anything that points to a problem.
DNS_TIMEOUT.txt (3.3 KB)