在 LINK md5sum_bin_host 中构建 AppRTCDemo 失败

在 LINK md5sum_bin_host 中构建 AppRTCDemo 失败

我已经在这个链接中完成了在 Ubuntu 15.10 上构建 AppRTCDemo 的所有说明 http://webrtc.org/native-code/android/ 当我尝试这个命令“ninja -C out/Debug AppRTCDemo”时,我得到了这个结果

ninja:进入目录“out/Debug”[2326/2553] ACTION 编译 libjingle_peerconnection_java java 源 java/android/org/webrtc/VideoCapturerAndroid.java:49:警告:[deprecation] android.hardware 中的相机已被弃用 android.hardware.Camera.PreviewCallback,^

java/android/org/webrtc/VideoCapturerAndroid.java:49:警告:[弃用] 相机中的 PreviewCallback 已被弃用 android.hardware.Camera.PreviewCallback,^

2 个警告 [2530/2553] LINK md5sum_bin_host

失败:../../third_party/llvm-build/Release+Asserts/bin/clang++ -Wl,-z,now -Wl,-z,relro -Wl,-z,defs -pthread -fPIC -B/media/shady/Shady/webrtc_checkout/src/third_party/binutils/Linux_x64/Release/bin -o md5sum_bin_host -Wl,--start-group obj.host/chromium/src/tools/android/md5sum/md5sum_bin_host.md5sum.o obj.host/chromium/src/base/libbase.a obj.host/chromium/src/base/libbase_static.a obj.host/chromium/src/third_party/modp_b64/libmodp_b64.a obj.host/chromium/src/base/third_party/dynamic_annotations/libdynamic_annotations.a obj.host/chromium/src/base/third_party/libevent/libevent.a -Wl,--end-group -lrt

/usr/lib/gcc/x86_64-linux-gnu/5.2.1/../../../../include/c++/5.2.1/bits/atomic_base.h:362: 错误:对‘__atomic_is_lock_free’未定义引用

/usr/lib/gcc/x86_64-linux-gnu/5.2.1/../../../../include/c++/5.2.1/bits/atomic_base.h:362: 错误:对‘__atomic_is_lock_free’未定义引用

/usr/lib/gcc/x86_64-linux-gnu/5.2.1/../../../../include/c++/5.2.1/bits/atomic_base.h:354: 错误:对‘__atomic_is_lock_free’未定义引用

clang:错误:链接器命令失败,退出代码为 1(使用 -v 查看调用)

ninja:构建已停止:子命令失败。

请大家帮帮我,因为我被这个错误困扰了很长时间,我在互联网上搜索了很多,但没有找到有用的信息。提前谢谢大家。

答案1

我在分支 51 中遇到了这个错误。我发现问题是使用 5.x 版本时md5sum必须链接到。因此,我修改了文件如下: libatomicgcc<dir of webrtc>/src/chromium/src/tools/android/md5sum/md5sum.gyp

diff --git a/tools/android/md5sum/md5sum.gyp b/tools/android/md5sum/md5sum.gyp
index 9099ba9..177883d 100644  
--- a/tools/android/md5sum/md5sum.gyp  
+++ b/tools/android/md5sum/md5sum.gyp  
@@ -76,6 +76,18 @@  
       'sources': [  
         'md5sum.cc',  
       ],  
+      'conditions': [  
+        [  
+            "OS=='android'",  
+            {  
+            "link_settings": {    
+                "libraries": [  
+                    "-latomic"
+                    ]  
+                }  
+            }  
+        ],  
+      ],  
     },  
   ],   
 }   

然后cd运行<dir of webrtc>/src

python webrtc/build/gyp_webrtc.py
ninja -C out/Debug AppRTCDemo

相关内容