Solar2D Backward Compatibility with Mac Mojave

Hello all, @vlads

Would it at all be possible to make Solar2D backwards compatible with Mac Mojave so we would not need to upgrade to Catalina? I imagine I am not the only one avoiding this upgrade due to the myriad issues and problems it would create (I actually upgraded and had to downgrade).

Thank you.

Of course! Are there any issues with your macOS right now?

I am on Mojave but I can’t use the latest builds there as it seems to require Catalina. Do I need to do something different or do you need to make changes to the builds?

Thanks.

Please deceive in detail what issues do you have.

I get

UNSUPPORTED iOS SDK Mismatch

The version of iOS SDK (13.2) that’s installed on this computer does not match the target iOS version (14.1). You may encounter issues building or incompatibilities at runtime.
strong text

I am currently running Xcode 11.3.1 which is the latest compatible for Mac OS 10,14,6, I believe.

I’m not sure if and how I can install and select a later version of the iOS SDK separate from installing Xcode, if that is at all possible (from what I can see it is not).

Thanks.

Ah… So simulator works, you can’t build for iOS, right?
This is different issue. I can try to include iOS 11.3.1 templates into the build, but beware, that if you’re using ads in your apps, you may “have a bad time” starting from iOS 14, since it has new ad tracking requirements, which are possible only with iOS 14 SDK. I hope to rebuild all ad plugins by january to require this framework available only on iOS SDK 14+

Also, what issues do you have with Catalina? It is almost like 2 versions old already, released over a year ago, soon to be “past version” as well, with Big Sur, which have even more drastic changes.

Do you want me to include old templates for you?

2 Likes

Correct. It’s about building for iOS.
I am not using ads so that is no issue.
My issues with Catalina are not related to Solar2D but to other applications like Adobe Creative Suite. I know eventually I’ll have to upgrade but I’ll postpone it as long as I can.

So yes, please include the old templates.

Thank you very much.

I would also appreciate this. I have a laptop I am keeping away from Catalina, since some older software breaks on Catalina, and would be nice to make iOS builds from both my boxes.

I am also sticking with Mojave for now, for non-solar2d reasons, as I have some 32-bit apps I want to continue to use.

I added Xcode 11.3 iOS templates as requested to the latest build. Please confirm if it works for you.

1 Like

Thank you @vlads ,

Unfortunately I am getting the errors in the screen shots. I checked and I only have one version of Xcode installed and it is version 11.13.1 so I don’t know why I can’t select iOS 13.3 as the target or why Solar2D thinks I have Xcode 11.13.2.

This same error occurs with every version going back to 3579 or 3578. With version 3577 I do not get it and have the option to select iOS 13.3 (this is the only option).

I even ran sudo xcode-select -r but still the same error.

Question:
If I use 11.13 does that mean Metal is not supported, and consequently I will still have the black flash in iOS when bringing the app to the foreground?

Screen Shot 2020-11-06 at 5.14.39 PM

Screen Shot 2020-11-06 at 4.56.27 PM

Thank you.

I am having this issue as well, where Solar2D 3626 thinks the installed iOS SDK is 13.2, when it is actually 13.3 with Xcode 11.3.1 on macOS 10.14 Mojave.

ok… I would need you to help me out here. Please run commands and tell me their output:

xcode-select -p
xcodebuild -version
xcrun --sdk iphoneos --show-sdk-version
xcodebuild -showsdks

cc @jmaher, @sn2apps, @SillysoftGames

$ xcode-select -p /Applications/Xcode.app/Contents/Developer

$ xcodebuild -version
Xcode 11.3.1
Build version 11C505

$ xcrun --sdk iphoneos --show-sdk-version
13.2

$ xcodebuild -showsdks
iOS SDKs:
iOS 13.2 -sdk iphoneos13.2

iOS Simulator SDKs:
Simulator - iOS 13.2 -sdk iphonesimulator13.2

macOS SDKs:
DriverKit 19.0 -sdk driverkit.macosx19.0
macOS 10.15 -sdk macosx10.15

tvOS SDKs:
tvOS 13.2 -sdk appletvos13.2

tvOS Simulator SDKs:
Simulator - tvOS 13.2 -sdk appletvsimulator13.2

watchOS SDKs:
watchOS 6.1 -sdk watchos6.1

watchOS Simulator SDKs:
Simulator - watchOS 6.1 -sdk watchsimulator6.1

And yet, all Simulators are iOS 13.3, as 13.2 isn’t even installed:

@vlads can you create another Legacy target for 13.2?

Here you go @vlads
xcode-select -p
/Applications/Xcode.app/Contents/Developer

xcodebuild -version
Xcode 11.3.1
Build version 11C504

xcrun --sdk iphoneos --show-sdk-version
13.2

xcodebuild -showsdks
iOS 13.2 -sdk iphoneos13.2

iOS Simulator SDKs:
Simulator - iOS 13.2 -sdk iphonesimulator13.2

macOS SDKs:
DriverKit 19.0 -sdk driverkit.macosx19.0
macOS 10.15 -sdk macosx10.15

tvOS SDKs:
tvOS 13.2 -sdk appletvos13.2

tvOS Simulator SDKs:
Simulator - tvOS 13.2 -sdk appletvsimulator13.2

watchOS SDKs:
watchOS 6.1 -sdk watchos6.1

watchOS Simulator SDKs:
Simulator - watchOS 6.1 -sdk watchsimulator6.1

Thanks.
May be I made a typo and it doesn’t work. But that’s weird. Solar2D 3626 has templates for iOS13.2.
Also, Xcode version, iOS version and iOS SDK version are different versions. Basically iOS Simulator is tied to iOS version. Xcode updates not always come with SDK update, which is used to build apps.

Try editing /Applications/Corona-3626/Corona Simulator.app/Contents/Resources/iOS-SDKs.json, may be change last entry "xcodeVersion": "13.3" to 13.2.

May be it would help, because templates are there /Applications/Corona-3626/Corona Simulator.app/Contents/Resources/iostemplate

@vlads Changing the “xcodeVersion” in the “iOS-SDKs.json” file did indeed allow me to make a build. Thanks!

@vlads That worked for me too. Thank you.

I noticed there’s still the black flash when bringing the app to the foreground. Is that something we’re stuck with if using Xcode 13.2?