我在UBUNTU 13.10 env。
中为Android构建WebRTC的步骤查看代码:
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
我收到此错误:
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
如果我从"OS=android"
删除GYP_DEFINES
命令" gclient runhooks"但是如果我尝试在忍者版本之后使用生成的库"libjingle_peerconnection_so.so"
,我会在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
如果我做错任何一步,请告诉我。我不确定是否必须使用"OS=android"
来生成Android库。
答案 0 :(得分:2)
我认为你做错了什么。
您的错误被提到here,我想它会被修复。
"Yes, chrome has moved to BoringSSL from OpenSSL, which causes some problems in WebRTC Android. We are looking into it."
您可以尝试较旧的版本,我按照建议here尝试了修订版r6783并且工作正常
答案 1 :(得分:0)
关注此example,我已经尝试过并完全成功。
只需要进行一次更改就是本例中为gclient config命令提供的链接是旧版本。点击链接gclient config http://webrtc.googlecode.com/svn/trunk
另外请确保您拥有oracle jdk-6,其他版本在执行本机代码的步骤时会产生问题 祝你好运。