I found similar discussion on this subject but this probably something different so I thought to ask separately.
I was try building sample project provided by FeathersUI/Openfl on iOS.
I ran following command to build the project for iOS-simulator: % haxelib run lime build ios -simulator
This went well and generates Xcode project under “bin/iOS” directory along with its .xcodeproj file. I open that on Xcode 16.1.
While try running the project on iOS simulator, I received following error:
Building for 'iOS-simulator', but linking in object file (/Users/devsena/Desktop/components-explorer/bin/ios/Components/lib/arm64/liblime.a[2](d6db1c91_ColorMatrix.o)) built for 'iOS'
After some StackOverflow, I change this in project’s Build Settings. That removes the error for me:
Now when I tries to run the project on iOS simulator, it throws me following error and never installs on simulator:
Did you build iOS ios without -simulator previously? If so, you might need to add -clean to ensure that it’s not using object files for a real device instead of the simulator.
I’m currently using macOS Sequoia 15.3, Xcode 16.2 with iOS 18.2, Haxe 4.3.6, OpenFL 9.3.4, and Lime 8.2.2. I was able to get lime test ios -simulator -clean to work on my machine with the same Feathers UI components-explorer project. No changes to the Xcode project required. The one quirk I saw is that the simulator launched, but my app didn’t open. But I ran the command again (without -clean the second time, just to avoid the long C++ build times), and it launched successfully in the already-open simulator.
Thank you very much, @joshtynjala ! That was a big help.
But what’s are the process to sign a Haxe/Openfl application with certificate/provisioning-profile and then submit to App Store?
Although the command you suggested works (and manually install the .ipa file in simulator) - but the generated Xcode project turns still faulty.
I wanted to use the generated Xcode project to -
Choose correct certificate and provisioning-profile
Build .xcarchive file to facilitate with Xcode upload process to App-Store/Test-Flight
While I tried to run the generated Xcode project, I continue to see the same problem described in the original issue. I was wondering if you able to run the generated Xcode project at your end or not.
For testing on a real device (without -simulator), I have successfully specified team-id only. I haven’t released an OpenFL app on the App Store, so I’m not sure if team-id is all you need for that or not. Maybe someone can chime in about that, if they’ve released any apps.
Regardless, we also have options for specifying provisioning-profile and identity. There does not appear to be a way to specify a certificate file for iOS. Only the name of a developer identity from the Keychain.
I confirm the problem. However, with or without having -clean command and ran multiple times, the app not automatically installs to running simulator - if that what is suppose to be.
I even tried keep run both iPhone and iPad simulators at the same time, but I see upon completion one of the simulator get focused but nothing installs automatically. I requires to drag-n-drop the app file into simulator manually.
You mentioned that you were using Lime 8.2.1. There was an issue where we sometimes tried to install apps in iOS simulators that were considered “unavailable”. That was fixed in 8.2.2.
lime test ios should install the app on a physical device automatically, if the device is connected to your computer.
Alternatively, you can open Xcode, go to Window → Devices and Simulators to find your physical device. You should be able to drag and drop the .app file into that window to install it on the device.
Something not seems to be right though, when I tried to give this a test.
I updated Lime to 8.2.2. I connected my iPad device and also ensured that it is detected by the OS.
Upon running lime test ios it failed to installs reporting “No device connected”.
At the same time, if I ran xcrun xctrace list devices, I can see my device in connected list:
The command seems to have some problem then, @joshtynjala . I confirm while running the command in command-line, it returns “No device found.” message.
At the same time, I can directly run on device using Xcode.
I wonder if the command that’s using by Lime during the process, needs some adjustment.
For references I’m using,
iPad (5th gen)
iPadOS (not iOS if that makes any difference) v.16.7.10
I tried to run only this, but that also returned me no device found message: xcrun devicectl list devices
Please confirm that you tried opening the Devices and Simulators window in Xcode before trying to install on the device. I found that the xcrun devicectl list devices command does not list my connected iPhone unless I’ve opened that window.
@joshtynjala I confirm in Devices and Simulators, my device well detected and shown but the xcrun command. I re-confirm that I can install to device correctly using Xcode, without any trouble.