Failing to build in Xcode 14.3

Hi,
SO I updated Xcode to 14.3 today, and rebuilt pods, and now I/m getting this. My main app is objc, BackendHelper.m is my class. Any clues for me to follow?

/Users/asmith/Library/Developer/Xcode/DerivedData/ATB_iPad-aucuxkyjlyovfbecwgkivzaewqbk/Build/Intermediates.noindex/ATB\ iPad.build/Debug-iphoneos/AudioTools.build/Objects-normal/arm64/BackendHelper.o

/Volumes/Mac Data/iPhone/Apps/AudioToolbox/audiotools_2004/ATB/Classes/BackendHelper.m:7:9: fatal error: ‘Backendless-Swift.h’ file not found
#import <Backendless-Swift.h>
^~~~~~~~~~~~~~~~~~~~~
1 error generated.

/Volumes/Mac Data/iPhone/Apps/AudioToolbox/audiotools_2004/ATB/Classes/BackendHelper.m:7:9: ‘Backendless-Swift.h’ file not found

Thanks
Andrew

Hi,

I am seeing the same on my end. I just updated to 14.3 this morning, and now everything is broke.

Cheers,

Michael Iverson

Thanks for letting me know!

Ok, I’m going back to Xcode 4.2, hopefully that will allow me to build again

Andrew

hmm installed 14.2, clean and build, same error. Guess I need a deeper clean

Andrew

Hello @Andrew_Smith, @Michael_Iverson,

Please try to clean the cache.
Do you use cocoapods dependencies or SPM?

Regards,
Olha

Hi Ohla,

I use Cocoapods.

Cheers,

Michael Iverson

Hi Michael,

Unfortunately I cannot reproduce the issue you faced after update…

Do the Socket.IO-Client-Swift and Starscream pods targets have the appropriate iOS Deployment Target version?

Hi Olha,

This what I am seeing.

Cheers,

Michael Iverson

It seems like you’re not the only one who faced issues after Xcode updated to 14.3, e.g:

  1. Issue 1
  2. Issue 2

Do the Socket.IO-Client-Swift and Starscream pods targets have the appropriate iOS Deployment Target version?

I’m talking about these pods settings:

The issue I faced with after update was related with the lower Socket-IO and Starscream dependency versions, than the new Xcode supports, so I changed them manually in settings and that worked for my project.

I’mm having problems still, updated my pods iOS to

platform :ios, 12.0

pod install
pod update

Which got me

Installing BackendlessSwift 6.7.7 (was 6.4.0)

My Starscream installs as iOS 8.0, and Socket-IO as 10, I updated both to iOS 11.0 in those xcode screens you show, but now I’m getting this build error:

/Volumes/Mac Data/iPhone/Apps/AudioToolbox/audiotools_2004/ATB/Classes/BackendHelper.m:209:29: No visible @interface for ‘BackendlessUser’ declares the selector ‘getPropertyWithPropertyName:’

For this code line:

id prop = [loggedInUser getPropertyWithPropertyName:inApp];

I am using that to avoid this line, which also is not available although it is listed in the API Docs, to find out if a user is currently logged in

BackendlessUser *currentUser = [Backendless.shared.userService getCurrentUser];

And then even if those are commented out, when I try to archive I get this

Backendless.framework" failed: No such file or directory (2)

Showing Recent Errors Only
PhaseScriptExecution [CP]\ Embed\ Pods\ Frameworks /Users/asmith/Library/Developer/Xcode/DerivedData/ATB_iPad-aucuxkyjlyovfbecwgkivzaewqbk/Build/Intermediates.noindex/ArchiveIntermediates/AudioTools/IntermediateBuildFilesPath/ATB\ iPad.build/Adhoc-iphoneos/AudioTools.build/Script-0182D5652E3ACAA5C7BF283D.sh (in target ‘AudioTools’ from project ‘ATB iPad’)
cd /Volumes/Mac\ Data/iPhone/Apps/AudioToolbox/audiotools_2004/ATB
/bin/sh -c /Users/asmith/Library/Developer/Xcode/DerivedData/ATB_iPad-aucuxkyjlyovfbecwgkivzaewqbk/Build/Intermediates.noindex/ArchiveIntermediates/AudioTools/IntermediateBuildFilesPath/ATB\\ iPad.build/Adhoc-iphoneos/AudioTools.build/Script-0182D5652E3ACAA5C7BF283D.sh

mkdir -p /Users/asmith/Library/Developer/Xcode/DerivedData/ATB_iPad-aucuxkyjlyovfbecwgkivzaewqbk/Build/Intermediates.noindex/ArchiveIntermediates/AudioTools/BuildProductsPath/Adhoc-iphoneos/AudioTools.app/Frameworks
Symlinked…
rsync --delete -av --filter P .*.??? --links --filter “- CVS/” --filter “- .svn/” --filter “- .git/” --filter “- .hg/” --filter “- Headers” --filter “- PrivateHeaders” --filter “- Modules” “…/…/…/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Backendless.framework” “/Users/asmith/Library/Developer/Xcode/DerivedData/ATB_iPad-aucuxkyjlyovfbecwgkivzaewqbk/Build/Intermediates.noindex/ArchiveIntermediates/AudioTools/InstallationBuildProductsLocation/Applications/AudioTools.app/Frameworks”
building file list … rsync: link_stat “/Volumes/Mac Data/iPhone/Apps/AudioToolbox/audiotools_2004/ATB/…/…/…/IntermediateBuildFilesPath/UninstalledProducts/iphoneos/Backendless.framework” failed: No such file or directory (2)
done

sent 29 bytes received 20 bytes 98.00 bytes/sec
total size is 0 speedup is 0.00
rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots/97f6331a-ba75-11ed-a4bc-863efbbaf80d/Library/Caches/com.apple.xbs/Sources/rsync/rsync/main.c(996) [sender=2.6.9]
Command PhaseScriptExecution failed with a nonzero exit code

Command PhaseScriptExecution failed with a nonzero exit code

Hello @Andrew_Smith,

Firstly, thank you for indicating the documentation inaccuracy. We’ll update it as soon as possible.
The current user retrieval looks like:

BackendlessUser *currentUser = Backendless.shared.userService.currentUser;

and the user properties could be accessed this way:

id prop = currentUser.properties[@"propertyName"];

According to the archive issue - as I wrote in my previous comment, this issue is related with the newest Xcode version and Cocopods, not with Backendless.
Xcode 14.3 is now using a relative path in its symlink for frameworks and Cocoapods cannot handle it right now.
Here is the discussion on the Apple website.
Also users report that this solution can be used as workaround:

Found this workaround on another thread that worked for me:
Solution by @vadimwe worked for me! :+1: in APPNAME/ios/App/Pods/Target Support Files/Pods-App/Pods-App-frameworks.sh replaced source=“$(readlink “${source}”)” with source=“$(readlink -f “${source}”)”
There were two instances of calls to readlink that I had to fix in the .sh file.

so I recommend you to try it until Cocapods releases a fix.

Hi Olha,

Thanks, that worked for me. I cannot speak for others, so I will not hit the resolved tab. Thanks for the support.

Cheers,
Michael Iverson

Hi Ohla,

Thanks so much, the loggedInUser.properties is now working again!

On the sh script change, I’m not clear about where to find that. Is it on this page?

Best,
Andrew

OH I See! It’s the file pointed to from that page. Yes that fixes it, you are brilliant!

Have a great day

Best,
Andrew

1 Like

Hi @Andrew_Smith,

Glad it worked for you!