Jump to content
Bert-Jan

XCode 12 compile error

Recommended Posts

Does anyone have advise for me...

 

I upgraded Xcode to 12, my iPhone to iOS 14 and the SDK to 14.0.

 

Compiling to iOS now spawns the following error:

 

[DCC Error] E2597 ld: file 'C:\Users\bwieg\Documents\Embarcadero\Studio\SDKs\iPhoneOS14.0.sdk/usr/lib/libiconv.dylib' too small (length=0) for architecture arm64

 

Going back to SDK 13.6 does not help so I guess this has to do with Xcode.

Edited by Bert-Jan

Share this post


Link to post
7 hours ago, Bert-Jan said:

I upgraded Xcode to 12, my iPhone to iOS 14

You'll find you won't be able to debug with a device that has iOS 14.0. Deploying will work; just not debugging.

7 hours ago, Bert-Jan said:

Going back to SDK 13.6 does not help so I guess this has to do with Xcode.

Because Delphi does not import the iOS 13.6 SDK correctly, either (as well as iOS 14.0). Use iOS 13.5 SDK if you can - it comes with Xcode 11.5. I wrote about it here:

 

https://delphiworlds.com/2020/08/using-a-prior-ios-or-macos-sdk-with-delphi/

Share this post


Link to post
33 minutes ago, Bert-Jan said:

Thank you!

 

Is it something that Delphi will catch up on eventually?

Sure, but then XCode 13 will be out....

  • Haha 1

Share this post


Link to post

All these seems to be related RSP31014, RSP31049, RSP31086

No official statement yet, maybe upvoting helps to accelerate that.

 

The "debugserver" issue I see from time to time, which IMHO seems to be an XCode issue.

So far there is no good explanation howto handle this, except to update phones and XCode to latest versions.

This I try to avoid mostly, to not run into such booby traps.

But I think at least the "debugserver" issue might get fixed by updating from time to time.

This always looks rather like a "planned obsolescence" for the API from Apple, than a really technical issue.

Not sure what philosophy Apple really has regarding their updates, so far they seems not to care a lot about their developers,

as I can find many similar issues in the XCode world too.

 

Edited by Rollo62

Share this post


Link to post
17 hours ago, Dave Nottage said:

You'll find you won't be able to debug with a device that has iOS 14.0. Deploying will work; just not debugging.

Because Delphi does not import the iOS 13.6 SDK correctly, either (as well as iOS 14.0). Use iOS 13.5 SDK if you can - it comes with Xcode 11.5. I wrote about it here:

 

https://delphiworlds.com/2020/08/using-a-prior-ios-or-macos-sdk-with-delphi/

Best way, 1- Export SDK from Delphi IDE Tools->Options->SDK Manager select SDK and export and import it in the new Delphi IDE

  • Like 2

Share this post


Link to post
4 hours ago, OmarPerezH said:

Best way, 1- Export SDK from Delphi IDE Tools->Options->SDK Manager select SDK and export and import it in the new Delphi IDE

That the export option exists had slipped my mind.. I'll update my article; thanks!

Share this post


Link to post

I finally got it back on track by reinstalling Xcode 11.7 and applying sdk 13.7.

Share this post


Link to post
On 9/27/2020 at 7:41 PM, Dave Nottage said:

You'll find you won't be able to debug with a device that has iOS 14.0. Deploying will work; just not debugging.

One more info: in release mode will give error too, but you will see that the app has been installed, just open it manually.

Share this post


Link to post

They released a patch today for Big Sur, XCode 12 and SDK 14...

 

Just applied it, installed the new PAServer, compiled a very simple app under SDK 14.2

[DCC Error] E2597 ld: file '\\vmware-host\Shared Folders\Documents\Embarcadero\Studio\SDKs\iPhoneOS14.2.sdk/usr/lib/libiconv.dylib' too small (length=0) for architecture arm64

 

Switch to 13.7, everything's fine.

Share this post


Link to post

After applying the patch, and adding the iOS Device 64-bit SDK 14.2, I'm getting the following error:

 

[DCC Error] E2597 ld: warning: dwarf DW_FORM_strp (offset=0xFFFFFFDC) is too big in c:\program files (x86)\embarcadero\studio\20.0\lib\iOSDevice64\Release\libibtogo.a(ail.o).

 

Switch to 13.7, everything's fine.

Share this post


Link to post

Do you need IbTogo ?

I recall a case where this was added by some unit,

Once removed it compiled, but that was an older Xcode  case.

Share this post


Link to post

Well, everything is fine now.

For a funny reason it didn’t install the new PA server

I installed it manually, deleted the 14.2 SDK, and re-imported it.

Now all the folders are correctly imported, And I can compile and deploy without problems

Share this post


Link to post

Usually the newer PaServers detect themself when outdated, and can update automatically, when pressing Test in the ConnectionProfileManager.

 

Share this post


Link to post
4 hours ago, Rollo62 said:

Do you need IbTogo ?

I recall a case where this was added by some unit,

Once removed it compiled, but that was an older Xcode  case.

Actually, I think this has to do with Firebase using Kastri. with SDK 13.7 it was working fine.

Share this post


Link to post
18 hours ago, MikeMon said:

Actually, I think this has to do with Firebase using Kastri

I'm having similar issues, i.e. building Firebase against iOS 14.2 SDK. Looking into it...

Edited by Dave Nottage
Afterthought
  • Like 1

Share this post


Link to post

I have an issue with midaslib giving me linker errors since the iOS patch:
 

[DCC Error] E2597 Undefined symbols for architecture arm64:
Error: "__ZdlPv", referenced from: _DllGetClassObject in alchemy.o); __ZN14DSBASE_Factory14CreateInstanceEP8IUnknownRK4GUIDPPv in alchemy.o); __ZN16DSCursor_Factory14CreateInstanceEP8IUnknownRK4GUIDPPv in alchemy.o); __ZN22DATAPACKETREAD_Factory14CreateInstanceEP8IUnknownRK4GUIDPPv in alchemy.o); __ZN23DATAPACKETWRITE_Factory14CreateInstanceEP8IUnknownRK4GUIDPPv in alchemy.o); __Z9GetFldObjjiP7DSXML_WPP7FLDConv in dspickle.o); __ZN12DSDATAPACKETD2Ev in dspickle.o); ... Error: "__ZdaPv", referenced from: __Z15MakeAdtFldDescsjP20DSDATAPACKETFLDDescXPjPP16DSPROVADTFLDDesc in dspickle.o); __ZN12DSDATAPACKET12DelRecStatesEv in dspickle.o); __ZN9DSEXTRACT12DelRecStatesEv in dspickle.o); __Z12MakeFldDescsjP9DSFLDDescPjPS0_S1_ in ds.o); __ZN6DSBASE8ResetAllEv in ds.o); __ZN6DSBASE8AddFieldEP9DSFLDDesc in ds.o); __ZN10LTABLEListD2Ev in ds.o); ...

ld: symbol(s) not found for architecture arm64

 

I'm using the iOS14.2-SDK and XCode 12.2 running on Big Sur. This errors occurs for any application where ClientDataSets are used.

Share this post


Link to post

I was having this error as well, when I removed DataSnap.DbClient the error went away.  I switched from ClientDataSets to FDMemTable a while ago and just needed to remove the reference from my uses clauses.  Good luck everyone.

Share this post


Link to post

Patch released: December Apple Platforms Patch for RAD Studio 10.4.1 1.0 from December 17, 2020:

Quote

December Apple Platforms Patch for RAD Studio 10.4.1 Readme
This patch addresses a few issues related to RAD Studio 10.4.1 support for XCode 12, iOS 14 and macOS Big Sur, which were not available when 10.4.1 shipped. We issued a similar patch in November. This new patch replaces that previous patch and offers further improvements in the same area. Installing this patch over the existing patch will replace all required files.

In the previous version of this patch (released in November 2020), we included:
* An RTL fix for an issue with exceptions, also causing issues at app termination, for macOS applications running on the recently released macOS 11.0 Big Sur. The corresponding public issue was logged on Quality Portal as RSP-30000. For this issue, the patch includes modified source code and compiled binary files.
* A new version of PAServer for macOS, and includes fixes for several issues:
   * SDK import from Xcode 12
   * Debugging applications on an iOS 14 device
   * This includes Quality Portal reports such as RSP-30806, RSP-31014, RSP-31667 and RSP-31049.
This version of the patch includes the above fixes, but adds several new fixes:
* An issue compiling against the ClientDataSet component (RSP-31795)
* Several issues using C++ with the iOS14 SDK:
   * Error ‘unknown type name __UINTPTR_TYPE__’ when building with iOS14
   * Errors building with the iOS14 SDK, including ‘invalid node: this may result from using a map iterator as a sequence iterator, or vice-versa’ or a linker error (RSP-31014)
   * Linker errors referring to DBX, such as ‘[ld Error]   Error: "__ZdlPv", referenced from:          __ZN9DBXObjectD0Ev in DBXCommon.o’

If you download the patch via GetIt, it is installed automatically. It will back up the files it replaces.

However, the new version of PAServer for macOS is not installed by the patch onto your Mac machines. It is placed in the PAserver folder (by default, C:\Program Files (x86)\Embarcadero\Studio\21.0\PAServer), and you need to copy the updated PAServer application over to your Mac and install it manually.
You can download this patch via the my.embarcadero.com download portal. If you do, to install, first back up and then copy the contents of the ZIP file into the respective subfolders of the RAD Studio installation folder.

Note that you also need to install the new version of PAServer on your Mac, as noted above.

We recommend using automatic installation through GetIt where possible.

 

Share this post


Link to post

I have installed the patch but nothing changes:

 

[PAClient Error] Error: E0776 2020-12-18 10:22:36.975 xcodebuild[2324:116233] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/m_/9ddrsvpx4wl6gffm17_2yky40000gn/T/IperiusRemote_2020-12-18_10-22-36.974.xcdistributionlogs'.
[PAClient Error] Error: E0776 Exported IperiusRemote to: /Users/imac_enter/PAServer/scratch-dir/Utente-IMAC/IperiusRemote.archive/temp
[PAClient Error] Error: E0776 ** EXPORT SUCCEEDED **

 

 

I had to use XCode 11 .. 😞

 

Share this post


Link to post
4 hours ago, emailx45 said:

Patch released: December Apple Platforms Patch for RAD Studio 10.4.1 1.0 from December 17, 2020:

 

where can I download it?

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×