Search code examples
androidwebrtcboringssl

WebRTC : gclient runhooks not working


Steps I followed to build WebRTC for Android in UBUNTU 13.10 env.

Check out the code:

gclient config https://webrtc.googlecode.com/svn/trunk
echo "target_os = ['android', 'unix']" >> .gclient
gclient sync --nohooks
cd trunk
source ./build/android/envsetup.sh
export GYP_DEFINES="build_with_libjingle=1 build_with_chromium=0 libjingle_java=1 OS=android $GYP_DEFINES"
gclient runhooks

I'm getting this error:

gyp: /home/joss/Desarrollo/Glass/GDK/librerias/webrtc/trunk/third_party/boringssl/boringssl.gyp not found (cwd: /home/joss/Desarrollo/Glass/GDK/librerias/webrtc)
Error: Command /usr/bin/python trunk/webrtc/build/gyp_webrtc -Dextra_gyp_flag=0 returned non-zero exit status 1 in /home/joss/Desarrollo/Glass/GDK/librerias/webrtc

If I remove "OS=android" from GYP_DEFINES the command "gclient runhooks" works but if I try to use the generated library "libjingle_peerconnection_so.so" after ninja build I get the following error in Android:

dlopen("/data/app-lib/com.mundoglass.glassrtc-1/libjingle_peerconnection_so.so") failed: dlopen failed: "/data/app-lib/com.mundoglass.glassrtc-1/libjingle_peerconnection_so.so" not 32-bit: 2

Please, let me know if I'm doing any step wrong. I'm not sure if I have to use "OS=android" to generated the Android libraries.


Solution

  • I don't think you're doing anything wrong.

    your error is mentioned here and i guess it will be fixed.

    "Yes, chrome has moved to BoringSSL from OpenSSL, which causes some problems in WebRTC Android. We are looking into it."
    

    You can try an older revision, I tried revision r6783 as suggested here and it works fine