构建arm64 owt ios sdk 和demo

模拟器不支持camera

  • 可以编译一个常见的arm64架构的ios了。
  • 我有一台iphone5s 和 ipad mini2
    在这里插入图片描述

arm64的

  • sioclient 要指向 arm64的openssl
  • owt ios demo 也要指向 arm64的openssl
  • 要修改ssl.gn
  • 要重新构建owt sdk
  • iphone am64

openssl

 zhangbin@pb6a80114  ~/tet/webrtc_build/owt-native/OpenSSL-for-iPhone/bin/iPhoneOS13.2-arm64.sdk   master  pwd
/Users/zhangbin/tet/webrtc_build/owt-native/OpenSSL-for-iPhone/bin/iPhoneOS13.2-arm64.sdk

webrtc 的ssl.gn

  • ssl.gn
  • iPhoneOS13.2-arm64
    在这里插入图片描述

构建owt

  • 之前

  • python scripts/build.py --arch ‘arm64’ --ssl_root ‘/Users/zhangbin/tet/webrtc_build/owt-native/OpenSSL-for-iPhone/bin/iPhoneOS13.2-arm64.sdk’ --scheme ‘debug’ --skip_tests

 zhangbin@pb6a80114  ~/tet/webrtc_build/owt-native/src/src  ➦ e983dc8 ●  python scripts/build.py --arch 'arm64'  --ssl_root '/Users/zhangbin/tet/webrtc_build/owt-native/OpenSSL-for-iPhone/bin/iPhoneOS13.2-arm64.sdk' --scheme 'debug' --skip_tests
Done. Made 1471 targets from 226 files in 3321ms
ninja: Entering directory `out/Debug-device-arm64'
[125/125] STAMP obj/third_party/webrtc/sdk/framework_objc+link.stamp
ninja: Entering directory `out/Debug-device-arm64'
[1/1] STAMP obj/talk/owt/owt_sdk_p2p.inputdeps.stamp
ninja: Entering directory `out/Debug-device-arm64'
[1/1] STAMP obj/talk/owt/owt_sdk_conf.inputdeps.stamp
ninja: Entering directory `out/Debug-device-arm64'
[1/1] STAMP obj/talk/owt/owt_sdk_objc.inputdeps.stamp
ninja: Entering directory `out/Debug-device-arm64'
[1/1] LIBTOOL-STATIC obj/talk/owt/libowt_deps.a
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (audio_receive_stream.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(audio_receive_stream.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(audio_receive_stream.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (audio_send_stream.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(audio_send_stream.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(audio_send_stream.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (audio_state.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(audio_state.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(audio_state.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (auto_correlation.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(auto_correlation.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(auto_correlation.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (cross_correlation.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(cross_correlation.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(cross_correlation.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (decoder_database.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(decoder_database.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(decoder_database.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (dtls_transport.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(dtls_transport.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(dtls_transport.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (encoded_frame.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(encoded_frame.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(encoded_frame.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (err.o) in output file used for input files: /Users/zhangbin/tet/webrtc_build/owt-native/OpenSSL-for-iPhone/bin/iPhoneOS13.2-arm64.sdk/lib/libcrypto.a(err.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(err.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (helpers.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(helpers.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(helpers.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (histogram.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(histogram.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(histogram.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (int128.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(int128.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(int128.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (jsep_ice_candidate.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(jsep_ice_candidate.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(jsep_ice_candidate.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (logging.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_sdk_base.a(logging.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(logging.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (moving_average.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(moving_average.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(moving_average.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (packet.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(packet.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(packet.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (packet.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(packet.o) and: /Users/zhangbin/tet/webrtc_build/owt-native/OpenSSL-for-iPhone/bin/iPhoneOS13.2-arm64.sdk/lib/libssl.a(packet.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (packet_buffer.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(packet_buffer.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(packet_buffer.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (rtp_sender.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(rtp_sender.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(rtp_sender.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (sctp_transport.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(sctp_transport.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(sctp_transport.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (splitting_filter.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(splitting_filter.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(splitting_filter.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (stream.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(stream.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_sdk_base.a(stream.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (sysinfo.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_sdk_base.a(sysinfo.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(sysinfo.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (video_common.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_common.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_common.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (video_frame_buffer.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_frame_buffer.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_frame_buffer.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (video_receive_stream.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_receive_stream.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_receive_stream.o) due to use of basename, truncation and blank padding
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/libtool: warning same member name (video_send_stream.o) in output file used for input files: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_send_stream.o) and: out/Debug-device-arm64/obj/talk/owt/libowt_deps.a(video_send_stream.o) due to use of basename, truncation and blank padding
Done.
 zhangbin@pb6a80114  ~/tet/webrtc_build/owt-native/src/src  ➦ e983dc8 ●  

出现一个异常

2020-02-01 19:00:10.030628+0800 ICS Conference[852:850431] [ZSPDEBUG joinWithToken Function:-[ConferenceConnectionViewController connectBtnTouchDown:]_block_invoke_3 Line:231] RemoteStream Count:2
2020-02-01 19:00:10.176083+0800 ICS Conference[852:850595] -[NSError init] called; this results in an invalid NSError instance. It will raise an exception in a future release. Please call errorWithDomain:code:userInfo: or initWithDomain:code:userInfo:. This message shown only once.
2020-02-01 19:00:10.179145+0800 ICS Conference[852:850595] +[RTCPeerConnectionFactory sharedInstance]: unrecognized selector sent to class 0x1044c0768
2020-02-01 19:00:10.179825+0800 ICS Conference[852:850595] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[RTCPeerConnectionFactory sharedInstance]: unrecognized selector sent to class 0x1044c0768'
*** First throw call stack:
(0x1f92b6180 0x1f848e9f8 0x1f91d7a08 0x1f92bb9c8 0x1f92bd65c 0x100f07df4 0x100c3ec90 0x100c3cd90 0x1080436f4 0x108044c78 0x108047ad4 0x108055dc8 0x1080567ac 0x1f8ed51b4 0x1f8ed7cd4)
libc++abi.dylib: terminating with uncaught exception of type NSException

在这里插入图片描述

  • 官方
  • -all_load会导致 libsioclient_tls.a与owt 框架 ssl符号重复
  • 实际,加入-Objc解决

混画效果

  • 在这里插入图片描述
发布了693 篇原创文章 · 获赞 58 · 访问量 220万+

猜你喜欢

转载自blog.csdn.net/commshare/article/details/104133171