Building pjsip 2.5.5 for armeabi-v7a with Android NDK r12b

Анцев Александр
Sat, Aug 6, 2016 8:20 PM

Hello!

Today I've tried to build pjsip 2.5.5 for armeabi-v7a with Android NDK r12b and had some troubles (building for armeabi works fine). I found a corresponding bug #1940 [1], but there is no workarounds yet. I found workarounds by myself, but I didn't find how register in trac in order to update info about this bug, so I've decided to mail here.

Here is the problems which I've ran into:

  1. removal of samples folder. Contents of this folder can be downloaded here [2], then its content should be unzipped into $NDK_ROOT/samples folder.
  2. removal of ndk-build from ndk's root folder. ndk-build was moved into $NDK_ROOT/build folder. This problem can be fixed by changing on line 65 in configure-android script from
    ${ANDROID_NDK_ROOT}/ndk-build
    to
    ${ANDROID_NDK_ROOT}/build/ndk-build
  3. It is not written in ticket 1940, but version of toolchain in NDK changed from 4.8 to 4.9, so on line 65 in configure-android script we need change
    NDK_TOOLCHAIN_VERSION=4.8
    to
    NDK_TOOLCHAIN_VERSION=4.9

After this 3 simple steps I was able to compile pjsip 2.5.5 for armeabi-v7a with Android NDK r12b. I hope that this mail saves few hours for someone.

  1. https://trac.pjsip.org/repos/ticket/1940
  2. https://github.com/googlesamples/android-ndk/tree/android-mk

--
Sineresly yours,
Alexander Antsev

Hello! Today I've tried to build pjsip 2.5.5 for armeabi-v7a with Android NDK r12b and had some troubles (building for armeabi works fine). I found a corresponding bug #1940 [1], but there is no workarounds yet. I found workarounds by myself, but I didn't find how register in trac in order to update info about this bug, so I've decided to mail here. Here is the problems which I've ran into: 1. removal of samples folder. Contents of this folder can be downloaded here [2], then its content should be unzipped into $NDK_ROOT/samples folder. 2. removal of ndk-build from ndk's root folder. ndk-build was moved into $NDK_ROOT/build folder. This problem can be fixed by changing on line 65 in configure-android script from ${ANDROID_NDK_ROOT}/ndk-build to ${ANDROID_NDK_ROOT}/build/ndk-build 3. It is not written in ticket 1940, but version of toolchain in NDK changed from 4.8 to 4.9, so on line 65 in configure-android script we need change NDK_TOOLCHAIN_VERSION=4.8 to NDK_TOOLCHAIN_VERSION=4.9 After this 3 simple steps I was able to compile pjsip 2.5.5 for armeabi-v7a with Android NDK r12b. I hope that this mail saves few hours for someone. 1. https://trac.pjsip.org/repos/ticket/1940 2. https://github.com/googlesamples/android-ndk/tree/android-mk -- Sineresly yours, Alexander Antsev
AP
Ayoze Pérez Rodríguez
Mon, Aug 8, 2016 9:58 AM

Great advise. I finally could make this without errors. Sadly the errors
came later.

I'm trying to build with swig, but I always get these error lines:

/usr/bin/ld: cannot find -lpjsua2-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjsua-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjsip-ua-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjsip-simple-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjsip-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjmedia-codec-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjmedia-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjmedia-videodev-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjmedia-audiodev-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjmedia-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjnath-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpjlib-util-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lsrtp-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lresample-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lgsmcodec-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lspeex-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lilbccodec-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lg7221codec-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lyuv-x86_64-unknown-linux-gnu
/usr/bin/ld: cannot find -lpj-x86_64-unknown-linux-gnu
collect2: error: ld returned 1 exit status
error: command 'c++' failed with exit status 1
Makefile:19: recipe for target '_pjsua2.so' failed
make[1]: *** [_pjsua2.so] Error 1
make[1]: Leaving directory '.../pjproject-2.5.5/pjsip-apps/src/swig/python'
Makefile:23: recipe for target 'all' failed
make: *** [all] Error 1

I don't need video support. I'm only interested in audio calls. Should I
feed all that dependencies even when I don't need much of them?

Thanks

On 08/06/2016 10:20 PM, Анцев Александр wrote:

Hello!

Today I've tried to build pjsip 2.5.5 for armeabi-v7a with Android NDK r12b and had some troubles (building for armeabi works fine). I found a corresponding bug #1940 [1], but there is no workarounds yet. I found workarounds by myself, but I didn't find how register in trac in order to update info about this bug, so I've decided to mail here.

Here is the problems which I've ran into:

  1. removal of samples folder. Contents of this folder can be downloaded here [2], then its content should be unzipped into $NDK_ROOT/samples folder.
  2. removal of ndk-build from ndk's root folder. ndk-build was moved into $NDK_ROOT/build folder. This problem can be fixed by changing on line 65 in configure-android script from
    ${ANDROID_NDK_ROOT}/ndk-build
    to
    ${ANDROID_NDK_ROOT}/build/ndk-build
  3. It is not written in ticket 1940, but version of toolchain in NDK changed from 4.8 to 4.9, so on line 65 in configure-android script we need change
    NDK_TOOLCHAIN_VERSION=4.8
    to
    NDK_TOOLCHAIN_VERSION=4.9

After this 3 simple steps I was able to compile pjsip 2.5.5 for armeabi-v7a with Android NDK r12b. I hope that this mail saves few hours for someone.

  1. https://trac.pjsip.org/repos/ticket/1940
  2. https://github.com/googlesamples/android-ndk/tree/android-mk

--
Sineresly yours,
Alexander Antsev


Visit our blog: http://blog.pjsip.org

pjsip mailing list
pjsip@lists.pjsip.org
http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org

Great advise. I finally could make this without errors. Sadly the errors came later. I'm trying to build with swig, but I always get these error lines: /usr/bin/ld: cannot find -lpjsua2-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjsua-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjsip-ua-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjsip-simple-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjsip-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjmedia-codec-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjmedia-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjmedia-videodev-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjmedia-audiodev-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjmedia-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjnath-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpjlib-util-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lsrtp-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lresample-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lgsmcodec-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lspeex-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lilbccodec-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lg7221codec-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lyuv-x86_64-unknown-linux-gnu /usr/bin/ld: cannot find -lpj-x86_64-unknown-linux-gnu collect2: error: ld returned 1 exit status error: command 'c++' failed with exit status 1 Makefile:19: recipe for target '_pjsua2.so' failed make[1]: *** [_pjsua2.so] Error 1 make[1]: Leaving directory '.../pjproject-2.5.5/pjsip-apps/src/swig/python' Makefile:23: recipe for target 'all' failed make: *** [all] Error 1 I don't need video support. I'm only interested in audio calls. Should I feed all that dependencies even when I don't need much of them? Thanks On 08/06/2016 10:20 PM, Анцев Александр wrote: > Hello! > > Today I've tried to build pjsip 2.5.5 for armeabi-v7a with Android NDK r12b and had some troubles (building for armeabi works fine). I found a corresponding bug #1940 [1], but there is no workarounds yet. I found workarounds by myself, but I didn't find how register in trac in order to update info about this bug, so I've decided to mail here. > > Here is the problems which I've ran into: > 1. removal of samples folder. Contents of this folder can be downloaded here [2], then its content should be unzipped into $NDK_ROOT/samples folder. > 2. removal of ndk-build from ndk's root folder. ndk-build was moved into $NDK_ROOT/build folder. This problem can be fixed by changing on line 65 in configure-android script from > ${ANDROID_NDK_ROOT}/ndk-build > to > ${ANDROID_NDK_ROOT}/build/ndk-build > 3. It is not written in ticket 1940, but version of toolchain in NDK changed from 4.8 to 4.9, so on line 65 in configure-android script we need change > NDK_TOOLCHAIN_VERSION=4.8 > to > NDK_TOOLCHAIN_VERSION=4.9 > > After this 3 simple steps I was able to compile pjsip 2.5.5 for armeabi-v7a with Android NDK r12b. I hope that this mail saves few hours for someone. > > > 1. https://trac.pjsip.org/repos/ticket/1940 > 2. https://github.com/googlesamples/android-ndk/tree/android-mk > > -- > Sineresly yours, > Alexander Antsev > > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip@lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org