User Tools

Site Tools


embedded-web-interaction:wpe:webrtc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
embedded-web-interaction:wpe:webrtc [2019/04/02 00:07]
avnerus
embedded-web-interaction:wpe:webrtc [2019/04/02 11:46]
avnerus
Line 21: Line 21:
 </​code>​ </​code>​
  
-However, when trying to compile this for RPi compilation fails because of 2 different issues. I havne'​t figured out the cause yet, but:+When trying to compile this for RPi compilation fails because of 2 different issues:
  
-1) Strangely, while static linking libwebrtc.a,​ some symbols are being overwritten because of some files that have the same name in webrtc and in libsrtp (such as err.c)As a temporary fix, I changed ​//​link.txt// ​ of webrtc.dir in CMakeFiles from this command:+1) While static linking libwebrtc.a,​ some symbols are being overwritten because of files that have the same name
 +  * **third_party/​boringssl/​src/​crypto/​err/​err.c** 
 +  * **third_party/​libsrtp/​crypto/​kernel/​err.c** 
 + 
 +Changing ​//​link.txt//​ of webrtc.dir in CMakeFiles from this command:
 <​code>​ <​code>​
 arm-buildroot-linux-gnueabihf-ar rT ../​../​../​lib/​libwebrtc.a ​ ... arm-buildroot-linux-gnueabihf-ar rT ../​../​../​lib/​libwebrtc.a ​ ...
Line 31: Line 35:
 arm-buildroot-linux-gnueabihf-ar qT ../​../​../​lib/​libwebrtc.a ​ ... arm-buildroot-linux-gnueabihf-ar qT ../​../​../​lib/​libwebrtc.a ​ ...
 </​code>​ </​code>​
-Changing the r argument to q appends ​the symbols ​from the new files instead of replacing ones with files in the same name. +Appends ​the symbols instead of replacing ones with files in the same name and fixes the problem.
- +
-Looks like this should have already been fixed in [[https://​github.com/​Kitware/​CMake/​commit/​1ec6485c6a16c230bf29696ab8fd48eb5edbb78a|CMake]]! ​+
  
-The problem is actually ​**USE_THIN_ARCHIVES** [[https://​svn.webkit.org/​repository/​webkit/​releases/​WPE%20WebKit/​webkit-2.24.0/​Source/​cmake/​OptionsCommon.cmake|here]].+This should have already been fixed in [[https://​github.com/​Kitware/​CMake/​commit/​1ec6485c6a16c230bf29696ab8fd48eb5edbb78a|CMake]],​ but WebKit added the **USE_THIN_ARCHIVES** [[https://​svn.webkit.org/​repository/​webkit/​releases/​WPE%20WebKit/​webkit-2.24.0/​Source/​cmake/​OptionsCommon.cmake|feature]] that introduced this issue.
  
-2) Probably because of my gcc flags, the //libyuv// library was trying to use the **Neon** functions of the ARM processor (as it should). However, the *_neon.cc files were not included in CMakeLists.txt,​ I am not sure why. I had to manually add these to CMakeLists.txt:+2) Probably because of my gcc flags, the //libyuv// library was trying to use the **Neon** functions of the ARM processor (as it should). However, the *_neon.cc files were not included in [[https://​trac.webkit.org/​browser/​webkit/​releases/​WPE%20WebKit/​webkit-2.24.0/​Source/​ThirdParty/​libwebrtc/​CMakeLists.txt?​rev=243690|CMakeLists.txt,​]] I am not sure why. I had to manually add these:
  
 <​code>​ <​code>​
embedded-web-interaction/wpe/webrtc.txt · Last modified: 2019/04/02 11:51 by avnerus