@risto3, @edacval, or anybody else that can replicate the build failure when removing -jN
— the upstream is requesting the output of make from a failed build. Would one of you be able to give them something to work with?
Search Criteria
Package Details: python-pjproject 2.15.1-1
Package Actions
Git Clone URL: | https://aur.archlinux.org/pjproject.git (read-only, click to copy) |
---|---|
Package Base: | pjproject |
Description: | Open source SIP stack and media stack |
Upstream URL: | https://www.pjsip.org/ |
Licenses: | GPL-2.0-only |
Submitter: | None |
Maintainer: | alerque (GNUtoo, wuestengecko) |
Last Packager: | alerque |
Votes: | 33 |
Popularity: | 0.000204 |
First Submitted: | 2007-09-07 12:14 (UTC) |
Last Updated: | 2024-12-16 07:22 (UTC) |
Dependencies (19)
- pjprojectAUR (pjproject-gitAUR)
- python (python37AUR, python311AUR, python310AUR)
- alsa-lib (make)
- e2fsprogs (e2fsprogs-gitAUR) (make)
- ffmpeg (ffmpeg-nvcodec-11-1-gitAUR, ffmpeg-cudaAUR, ffmpeg-ffplayoutAUR, ffmpeg-headlessAUR, ffmpeg-fullAUR, ffmpeg-decklinkAUR, ffmpeg-amd-fullAUR, ffmpeg-gitAUR, ffmpeg-full-gitAUR, ffmpeg-amd-full-gitAUR, ffmpeg-obsAUR, ffmpeg-libfdk_aacAUR) (make)
- libsamplerate (libsamplerate-gitAUR) (make)
- libsrtp (libsrtp-gitAUR) (make)
- libyuv (make)
- openssl (openssl-gitAUR, openssl-staticAUR) (make)
- opus (opus-gitAUR) (make)
- portaudio (make)
- python (python37AUR, python311AUR, python310AUR) (make)
- python-build (make)
- python-installer (make)
- python-setuptools (make)
- python-wheel (make)
- speex (speex-gitAUR) (make)
- swig (swig-gitAUR) (make)
- util-linux (util-linux-aesAUR, util-linux-selinuxAUR) (make)
Required by (2)
- pjproject (optional)
- pjproject-git (optional)
Sources (3)
alerque commented on 2020-02-25 07:44 (UTC) (edited on 2020-02-25 07:45 (UTC) by alerque)
alerque commented on 2020-02-23 08:42 (UTC) (edited on 2020-02-23 08:50 (UTC) by alerque)
As a temporary fix I've added -j1
back to the make invocations. I tested it on multi-process parallel builds before removing it and it builds fine that way, the issue is not whether it is 1 thread or 10, the issue is it somehow fails if the job server is not invoked at all.
Upstream issue reported: https://github.com/pjsip/pjproject/issues/2300
risto3 commented on 2020-02-23 07:21 (UTC)
There does seem to be something anomalous in the swig part, comparing using -j1 and -j2 at least. Perhaps upstream should take a look. I believe -j1 is the best solution here for the time being.
risto3 commented on 2020-02-22 16:28 (UTC)
should mention, oddly enough, that my default makepkg.conf contains MAKEFLAGS="-j10"
It seems that I can build also with -j2, -j9 or even -j10 okay (with just the warning but no error).. but seemingly not using the default value.
I'm on an AMD Opteron(tm) Processor 6338P (family: 0x15, model: 0x2, stepping: 0x0)
go figure!
risto3 commented on 2020-02-22 16:05 (UTC) (edited on 2020-02-22 16:07 (UTC) by risto3)
for info, tried simply with
diff --git a/PKGBUILD b/PKGBUILD
index 771ebeb..ea77c33 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -48,7 +48,7 @@ build() {
make dep
make
- make -C pjsip-apps/src/swig
+ make -j1 -C pjsip-apps/src/swig
cd 'pjsip-apps/src/swig/python'
python setup.py build
and it built ok.
edacval commented on 2020-02-22 15:07 (UTC) (edited on 2020-02-22 15:08 (UTC) by edacval)
@risto3,@caleb: build fails when make runs several parallel jobs. Put
MAKEFLAGS="j1"
to makepkg.conf or replace build() function in PKGBUILD with
build() {
cd "$pkgbase-$pkgver"
export CXXFLAGS="$CXXFLAGS -fPIC"
if [ "$CARCH" = "i686" ]; then
export CXXFLAGS="$CXXFLAGS -march=i686"
arch_opts=(--disable-libwebrtc)
fi
export CFLAGS="$CFLAGS -fPIC -DNDEBUG"
./configure \
--prefix=/usr \
--with-external-speex \
--with-external-srtp \
--with-external-pa \
--with-external-gsm \
--enable-shared \
--disable-opencore-amr \
"${arch_opts[@]}"
make -j1 dep
make -j1
make -j1 -C pjsip-apps/src/swig
}
alerque commented on 2020-02-22 13:07 (UTC) (edited on 2020-02-22 13:07 (UTC) by alerque)
@risto3 I'm sorry it's broken for you, but I can't identify the problem. It is giving you an error about a directory not existing ... something that should have been extracted from the source tarball. I just tested on a clean build tree and not only is that directory present, but it builds fine too. You can also try this package. If you figure out what is either missing from your system or you can do differently to build it I'm happy to facilitate a fix.
risto3 commented on 2020-02-22 12:25 (UTC) (edited on 2020-02-22 12:30 (UTC) by risto3)
oups, I'm having difficulties upgrading to 2.10 on
Linux sarchx64 5.4.21-1-lts #1 SMP Thu, 20 Feb 2020 18:23:19 +0000 x86_64 GNU/Linux
Here's the tail end of the build
Seemed fine beforehand... richard
make[2] : on quitte le répertoire « /tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/build » make[2] : on quitte le répertoire « /tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/build » make[1] : on quitte le répertoire « /tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/build » make : on entre dans le répertoire « /tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig » make -C python make[1]: Entering directory '/tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig/python' python3 setup.py build make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule. make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule. make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule. make[2]: warning: jobserver unavailable: using -j1. Add '+' to parent make rule. running build running build_py running build_ext building '_pjsua2' extension gcc -pthread -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O3 -Wall -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -fno-semantic-interposition -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O3 -pipe -fno-plt -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fPIC -DNDEBUG -D_FORTIFY_SOURCE=2 -fPIC -I/usr/include/python3.8 -c pjsua2_wrap.cpp -o build/temp.linux-x86_64-3.8/pjsua2_wrap.o make[2]: Entering directory '/tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig/python' -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fPIC -DPJ_AUTOCONF=1 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fPIC -DNDEBUG -DPJ_IS_BIG_ENDIAN=0 -DPJ_IS_LITTLE_ENDIAN=1 -fPIC -DPJMEDIA_VIDEO_DEV_HAS_SDL=1 -I/usr/include/SDL2 -D_REENTRANT -DPJMEDIA_HAS_LIBAVDEVICE=1 -DPJMEDIA_HAS_LIBAVFORMAT=1 -DPJMEDIA_HAS_LIBAVCODEC=1 -DPJMEDIA_HAS_LIBSWSCALE=1 -DPJMEDIA_HAS_LIBAVUTIL=1 -DPJMEDIA_VIDEO_DEV_HAS_V4L2=1 -DPJMEDIA_HAS_VPX_CODEC=1 -DPJMEDIA_VIDEO_DEV_HAS_SDL=1 -I/usr/include/SDL2 -D_REENTRANT -DPJMEDIA_HAS_LIBAVDEVICE=1 -DPJMEDIA_HAS_LIBAVFORMAT=1 -DPJMEDIA_HAS_LIBAVCODEC=1 -DPJMEDIA_HAS_LIBSWSCALE=1 -DPJMEDIA_HAS_LIBAVUTIL=1 -DPJMEDIA_VIDEO_DEV_HAS_V4L2=1 -DPJMEDIA_HAS_VPX_CODEC=1 -I/tmp/makepkg/pjproject/src/pjproject-2.10/pjlib/include -I/tmp/makepkg/pjproject/src/pjproject-2.10/pjlib-util/include -I/tmp/makepkg/pjproject/src/pjproject-2.10/pjnath/include -I/tmp/makepkg/pjproject/src/pjproject-2.10/pjmedia/include -I/tmp/makepkg/pjproject/src/pjproject-2.10/pjsip/include -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -fPIC -DNDEBUG make[2]: Leaving directory '/tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig/python' gcc: error: make[2]: Entering directory '/tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig/python': No such file or directory gcc: error: make[2]: Leaving directory '/tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig/python': No such file or directory error: command 'gcc' failed with exit status 1 make[1]: [Makefile:37: _pjsua2.so] Error 1 make[1]: Leaving directory '/tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig/python' make: [Makefile:27 : python] Erreur 2 make : on quitte le répertoire « /tmp/makepkg/pjproject/src/pjproject-2.10/pjsip-apps/src/swig » ==> ERREUR : Une erreur s’est produite dans build(). Abandon…
alerque commented on 2020-02-22 05:37 (UTC)
PSA: I've started hosting this and also many other packages I maintain in the AUR as prebuilt packages in my repository for those that want to install them using pacman
without messing around with building from the AUR.
Maniaxx commented on 2019-07-02 02:31 (UTC)
Here is a modified PKGBUILD that pulls the svn instead to get 'pjsystest' and the corresponding wav files. You have to copy them from /usr/share/pjproject to a writable folder and start 'pjsystest'.
I actually needed that to test latency and list detected audio devices and audio backends.
Latency isn't that good here though (245ms roundtrip) on Audigy2 with Portaudio. I've tried ALSA and JACK as well but i don't get them properly working (JACK partially/scrambled, ALSA doesn't initialize properly). They can be optionally enabled in the PKGBUILD marked as experimental.
JACK would be the low-latency killer feature for SIP apps but there is none supporting it. JACK2-dbus doesn't work with portaudio anymore either.
PKGBUILD: https://pastebin.com/raw/z0RJJTzB
Pinned Comments
alerque commented on 2020-02-22 05:37 (UTC)
PSA: I've started hosting this and also many other packages I maintain in the AUR as prebuilt packages in my repository for those that want to install them using
pacman
without messing around with building from the AUR.