I have been using the IOS simulator from XE5 for many weeks now, but suddenly it will no longer work. I get the error 'Wrapper init failed (null)'. The only thing that happened before the problem was I got a request to "update" from OSX. I said 'yes' and it appears XCode was updated but it does seem to work fine. PAserver starts OK.
When I went to options SDK manager and used the update local files cache I got the error
Directory does not exist: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/usr/include/
This appears to be an incompatibilty between the PAServer and Xcode 5.1 and SDK 7.1. The same happens with XE4.
The question now is can you roll back XCode with success.
I did roll back to Xcode 5.0.2 and everything appears to work OK.
Roll back to Xcode 5.0.2 and Late October command line tools. Confirmed that this allows Delphi to invoke the simulator correctly.
Make sure you set SDK to 7.0 too, 7.1 won't work. With SDK 7.0 the compile is aimed at a usable SDK.
xcode 5.1 contains only iOS 7.1 SDK. So this is not incompatibility between paserver, but only lack of sdk in xcode .app package. You can always open the app package (right mouse button etc) and simple copy/paste older sdks into the right subfolder inside xcode.app
The other (easier) way is to install parallel xcode 5.1 and xcode 5.0 (changing names for example as follows: xcode51.app, xcode.app (for 5.0) - simulator works even with command line tools setup to 5.1 in xcode/preferences/locations).
For updating local file cache of sdk in delphi you need to rename old version to xcode50.app and 5.1 to xcode.app (I think that a path is hardcoded in paserver). In this configuration you can add 7.1 sdk, and fix it according to: http://delphi.radsoft.com.au/2013/10/making-delphi-xe4-compile-for-ios-devices-with-xcode-5/
After updating revert xcode file names and you will be able to compile against iOS 7.1 and run in device as well as in simulator :) - checked in Delphi XE4, so I think it will work in XE5 too.
Related
I am attempting to run my Swift app in Xcode, and after finding out my Xcode is up to date, yet my device is not supported, I took my problems to Google. Found out through a couple sources that I need to manually add device support, using this
I added the contents from the 16.0 folder into a new folder in Xcode Device Support and renamed the folder to 16.2 as it stated I should do.
Now, when I click Build, it tries to run before popping up an error on my computer saying:
This operation can fail if the version of the OS on the device is incompatible with the installed version of Xcode. You may also need to restart your mac and device in order to correctly detect compatibility.
I'm not sure what to do as it doesn't make sense for me to attempt downgrading back to another iOS version when I should be running my app with the latest version. Why does Xcode not update these folders to provide support for new iOS versions?
If you haven't received an update, delete xcode completely from your computer and download xcode 14.2 from this link https://developer.apple.com/download/all/?q=Xcode
download it from this link
IOS device support
I have tried to build an app through to the AppStore but they rejected it due to the app using sdk 11.4. Stating that it needs to use the updated version of 12.1.
The current Xcode I have installed is 10.1 or 10B61 which is the latest without making use of a Beta. I have searched through the settings trying to find how to update the sdk as well as maybe target that newer base SDK.
Things I have tried:
Searched for newer Xcode (stated above)
Searched through settings for the base SDK version number so it can be changed.
Went to AppStore to find any updates for Xcode (there were none)
Tried googling how to change/update the sdk, but none give an explicit answer on where this can be done. It merely states that Xcode 10 should come with a base SDK of 12.1, but that does not seem to be the case here.
Please note that this is not to target the minimum version. I know where that is and it is set accordingly. No issues there.
EDIT:
I have run $> xcodebuild -showsdks and it shows that sdk 12.1 is the sdk that is installed.
However, it seems that it is somehow overriding it to 11.4 when it is trying to build to AppStore. Not sure why.
The issue did not seem to be with Xcode itself but rather Bitrise that we were using to build and publish the app to the AppStore. Once the correct stack was selected for the building/publishing, it managed to build, however, we then found a different issue.
Using Xcode 10.1 we built the app in iOS 12.1, however, Bitrise seems to have an issue with React-Native third-party dependencies when it comes to Xcode 10.0+. It just doesn't seem to install them correctly and throws an error while compiling. (dependency: double-conversion)
The only advice we could find online was to downgrade xCode to 9.4 and then manually add the Device Support files (from targeted SDK to 12.1) to the app. This is something we don't want to do.
We are waiting for Bitrise to sort their stuff out, but in the meantime, we are looking into building straight from Xcode or Fastlane.
I would like to make my app compatible with IOS 7.0 but in the preferences --> downloads section, the lowest available version is IOS 8.1 simulator. I'm currently using OSX Yoesmite 10.10.5 wih xcode 7.2.1 running version 9.2.
Does that mean there's no way to test for app compatibility for any versions lower than IOS 8.1?
Edit: I realize it's possible to install older versions of xcode. I want to know if it's possible to download only the simulators on my current xcode, not have an entirely new and different xcode.
The answer should be NO.
It's not just about the simulator, but the SDK you use to compile the app to run within the simulator. When you use newer SDK to compile, the binary could contain unknown load commands to the binary header, or unknown APIs calls to an older system. That's the main reason you can't run an app built with newer SDK/system on an older OS. Even if it worked, it might still crashed at some point when the needed symbols can't be resolved.
So in order to run/build app for an older version of simulator, you need:
An older version of Xcode (which has older version of SDK)
Or, find out a way to setup your current version of Xcode to compile
with the older SDK extracted from an older version of Xcode. (This
may and may not work due to the change made to Xcode.)
For the second option, you can google it for how-to.
I'm trying to run a very simple (Hello World-ish) Fire Monkey app to an iOS Simulator (Mac Mini) from Delphi-XE7 (Windows 7).
When I do this I get a "Class linkage error", and a Trouble shooting window that contains the same text as this link.
Working through this:
I've verified that my connection profile is set up
And that it's able to talk to the Platform Assistant server (/w a Passwordl.
I've verified this by turning it off and using the Test Connection button to see that it fails when it is off and works when it is on.
I've added the SDK Manager for iOS Simulator (iPhoneSimulator 8.3)
I've added the SDK Manager for iOS Device (iPhoneOS 8.3)
I've get Xcode (6.3) started on the MAC.
I've got iOS Simulator already started
What have I missed?
I'll note that I don't see Phone Simulators for iOS 7.1, 8.1, or 8.2 even though they are installed for Xcode when I add the SDK Managers - I'm wondering if that is at all related.
There is a known issue with deploying iOS 8 code from Delphi XE7. Actually, it seems to be more to do with the version of Xcode (as of 2015-04-22 the latest version is 6.3).
The latest version of XCode that works with Delphi XE7 is 5.1.1. Downgrading from Xcode 6.3 to Xcode 5.1.1 has solved my issues. Delphi had other cryptic issues with Xcode 6.0.1 and above.
I'll note that the latest version of iOS that Xcode 5.1.1 capable deploying is 7.1, which is also the oldest version (as of 2015-04-22) that the AppStore will support. However, the App store will not support any new application in 7.1. So your path is to move to XE8 and I presume they've fixed the problems talking to XCode 6.x there.
[Running OS X 10.8]
It worked fine with Xcode 5.
Now got the latest XcodeColors from GitHub (5b8da92 : Xcode 5.1 support), built it under my Xcode 5.1 environment and the TestXcodeColors app fails to write out in colour.
Worse yet, moving on to debugging my app under the iOS simulator crashes Xcode due to having the XcodeColors plug-in. Removing it makes things work, but of course without colours in my console view. (boo)
XcodeColors destabilizes Xcode 5.1.
Anyone else experience this or found a way to get it functioning?
It looks like there are two possible causes for this crash: 1) OSX 10.8 2) Choosing to convert the program to ARC
A solution seems to have been found:
1) Delete your existing install of the plugin (~/Library/Application Support/developer/Shared/Xcode/plugin-ins/XcodeColors.xcplugin)
2) Download a fresh copy
3) Open it and do not choose to convert to ARC
If you are on 10.8:
4) Open the build settings
5) Change the Base SDK to 10.8
That's it. Otherwise, follow standard instructions (build it, restart Xcode, verify with the test program)
I had the same issue here. I just installed Xcode 5.1 with all my newly built plugins. This one crashed and I did some analysis and couldn't understand why it crashed! It all looked fine to me. I did convert the code to ARC but it didn't seem to be important for this issue.
Last resort: reboot machine. And voilà it worked! Go figure…
Ran the test and the Console output is now nicely coloured. Hope this helps you although it doesn't answer the question.