opentok-ios-sdk-samples-swift
opentok-ios-sdk-samples-swift copied to clipboard
Missing arm64 architecture building for simulators on m1
It seems the opentok framework isn't configured to expose the arm64 symbols required to run on a simulator on any of the MacMini M1.
Given the absolute silence on this, I imagine it is definitely not a priority for you even though we are going to have a lot of people upgrading their macbook pro's to some of those snappy m1pro and m1max, huh?
@rodrigoelp this is becoming a problem especially with SwiftUI (Previews don't work, as they're Simulator based).
Yes @mvarie, we are also painfully aware of this. That's one of the reasons I created this issue.
Though my organisation, we reached Vonage to push engineering to pay attention to it, if you have a chance, I would recommend you to do the same.
Same problem here, hope this will get prioritised.
This was promised to be delivered with 2.23 of the SDK that dropped yesterday. However, after further inspection the SDK is still a regular framework and not a universal framework with arm64 support for M1 simulators. Shame on you, Tokbox!
We have the same problem, it's been a year and a half... How can this have not been fixed already?
Thank for you everyone's patience. This is on our roadmap. That said, we can't provide an ETA. Sorry.
https://jira.vonage.com/browse/OPENTOK-49709
Just wanted to give an update. A release which adds support for this should be out sometime February.
@v-kpheng : Thank you for this update. Is there any specific release date yet?
@DogeWowzie, it'll ship some time in Q1.
@v-kpheng so M1 support has been delayed to the end of March?
Was just doing some research to see if Tokbox has added this and if people are still asking for it. Genuinely curious if there a reason it wasn't added back in 2021? It seems like such a trivial change to the build process to make sure you add in the arm64 arch.
Why did it need to wait until 2023? It's not like there aren't many devs using M1 or M2.
With Xcode 14.3 (currently in beta) - Apple has removed support for Rosetta which really hampers development without arm64.

@MattKiazyk and that’s why you need to listen to your developers 🥲
With Xcode 14.3 (currently in beta) - Apple has removed support for Rosetta which really hampers development without arm64.
- [ ] So we have gotten to the point where we are stuck on an old Xcode version due to the missing arm64 support of a single framework, which has considerably slowed down and complicated our debugging and development cycles for almost a year now. This is very disappointing and upsetting.
30 days more, and this issue will turn 2 years 🎉
I wonder (at the speed we are going) if I should start saving to send it to college once it turns 18.
i am bias, as i work at a different steaming delivery company which i won’t name directly here at this time.
but why what’s the main reason keeping you all from going with a different framework that supports swiftpm + arm64 arch since before it was a functional requirement?
Maybe they want us to switch to something like Twilio which supports SPM and arm64. No I don't work for Twilio. But we started evaluating them because of this same issue. We have been using OpenTok since 2013. But the lethargy is concerning and we are losing our confidence now.
seems like it has been resolved in 2.24.2 https://tokbox.com/developer/sdks/ios/release-notes.html
@maxxfrazer in our particular case, when we evaluated this a few years back, it seemed like the right choice for multiple platforms (we have to support android, iOS and windows).
We need to do some reevaluation of our stack (probably in about 6 months), we will find out what to do at that point.
Thanks everyone, for your patience. This has been released as part of iOS SDK 2.24.2. Closing.
Hi @v-kpheng ... We have an app build with Cordova that uses OpenTok through Cocoapods we build the app with fastlane. When building for a device it seems to work. However when building for a simulator (which is used to automate screenshots) it fails with errors that look something like this:
ld: ignoring file /var/folders/hf/72fc3n9d3mx4vqxtl13x4vj40000gn/T/snapshot_derived20230824-94291-5lqmb2/Build/Products/Debug-iphonesimulator/libCordova.a, building for iOS Simulator-x86_64 but attempting to link with file built for iOS Simulator-arm64
[22:59:39]: ▸ ❌ Undefined symbols for architecture x86_64
[22:59:39]: ▸ > Symbol: _CDVPluginHandleOpenURLNotification
[22:59:39]: ▸ > Referenced from: -[CDVWKInAppBrowser openInSystem:] in CDVWKInAppBrowser.o
[22:59:39]: ▸ ❌ ld: symbol(s) not found for architecture x86_64
[22:59:39]: ▸ ❌ clang: error: linker command failed with exit code 1 (use -v to see invocation)
I realize that those specific symbols are not related to OpenTok. But I think the OpenTok dependency may be causing it. Because if I remove that dependency everything builds without the x86_64 errors.
I think it might have something to do with this:
EXCLUDED_ARCHS[sdk=iphonesimulator*] = arm64
I can leave the OpenTok dependency, open Xcode, and force it to run in Rosetta simulator (for example with these instructions: https://sarunw.com/posts/open-using-rosetta-in-xcode-14-3)
Are you able to help point me in a direction to figure out what's going on? Thanks!