Unable to Compile WebRTC Library for Android

情到浓时终转凉″ 提交于 2020-05-16 07:35:13

问题


I am trying to compile WebRTC Native Stack to build libwebrtc.aar but unfortunately unable to understand what's going wrong.


System Information:

Distributor ID: Ubuntu
Description:    Ubuntu 18.04.4 LTS
Release:        18.04
Codename:       bionic
Java-Version:   OpenJDK-8-JDK
Python-Version: Python 2.7.17

I have followed the complete steps provided in the official WebRTC Native Development for Android. These steps have been completed without any interruption and every step took its time for completion. Then, I have to install all the dependency needed to build the source code.

./build/install-build-deps.sh

Before compiling the code I have also checked-out to particular git branch to go into different available WebRTC versions, to list all the branches using this git command.

git branch -r

I am sharing the latest Git Branches:


I have tried every git branch from branch-heads/60 to branch-heads/m79, and every branch has a different issue while using the compiling commands. I have tried these two procedures to build the library such as:


1- Using AAR Build Tools (./tools_webrtc/android/build_aar.py)

confu@ubuntu:~/webrtc_android/src$ tools_webrtc/android/build_aar.py
INFO:root:Building: armeabi-v7a
ERROR at //webrtc.gni:591:7: Can't load input file.
      absl_include_config,
      ^------------------
Unable to load:
  /home/confu/webrtc_android/src/third_party/abseil-cpp/BUILD.gn
I also checked in the secondary tree for:
  /home/confu/webrtc_android/src/build/secondary/third_party/abseil-cpp/BUILD.gn
Traceback (most recent call last):
  File "tools_webrtc/android/build_aar.py", line 234, in <module>
    sys.exit(main())
  File "tools_webrtc/android/build_aar.py", line 230, in main
    args.build_dir, args.extra_gn_switches, args.extra_ninja_switches)
  File "tools_webrtc/android/build_aar.py", line 210, in BuildAar
    extra_ninja_switches)
  File "tools_webrtc/android/build_aar.py", line 166, in Build
    _RunGN(gn_args_list)
  File "tools_webrtc/android/build_aar.py", line 93, in _RunGN
    subprocess.check_call(cmd)
  File "/usr/lib/python2.7/subprocess.py", line 190, in check_call
    raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['/usr/bin/python', '/home/confu/webrtc_android/src/third_party/depot_tools/gn.py', 'gen', '/tmp/tmp1JDmHL/armeabi-v7a', '--args=arm_version=7 use_goma=false target_cpu="arm" is_component_build=false is_debug=false rtc_include_tests=false target_os="android"']' returned non-zero exit status 1

2- Using Manual Compilation (gn gen out/Debug --args='target_os="android" target_cpu="arm"')

confu@ubuntu:~/webrtc_android/src$ gn gen out/Debug --args='target_os="android" target_cpu="arm64"'
ERROR at //BUILD.gn:648:20: Assignment had no effect.
      java_files = [
                   ^
You set the variable "java_files" here and it was unused before it went
out of scope.
See //BUILD.gn:647:5: whence it was called.
    junit_binary("android_junit_tests") {
    ^------------------------------------


回答1:


Usman, Follow i followed these steps and i was able to generate a valid webrtc aar module:

 git checkout origin/master
 gclient revert
 gclient sync

And you will have your issues sorted. You are checking out a branch which is behind the origin and doesn't have all dependencies and modules over there required to build your libwebrtc.aar



来源:https://stackoverflow.com/questions/61318223/unable-to-compile-webrtc-library-for-android

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!