After upgrading to Xcode 11.3, I can no longer embed frameworks.
To investigate the situation, I created a new single view project, and executed it under a simulator.
Then I added in Targets / General / Frameworks, Libraries and Embedded Content a standard framework, namely CoreLocation.framework
.
There are 3 options: Do Not Embed, Embed & Sign, Embed Without Signing:
The problem:
If I choose Embed Without Signing, the app builds, but I get the runtime error
This app could not be installed at this time. …
Failed to load Info.plist from bundle …
CoreLocation.framework; Extra info about plist: ACL=<not found>
I assume that I have to sign frameworks in the new Xcode version, so this might be OK.
However if I choose Embed & Sign, the app does not build because of the error
…
Signing Identity: "-"
…
CoreLocation.framework: bundle format unrecognized, invalid, or unsuitable
I was surprised that the signing identity is "-". I thus looked up the project build settings. They are:
Here, everything looks OK to me.
My question is:
What is wrong in my setup?
PS: I have looked up this similar post, but it does not have an answer.
A friend of mine found the solution:
In the Xcode Version 11.3 (11C29), the thread sanitizer no longer works, see here.
The workaround is to disable it.
Another point is that it is no longer required to embed standard frameworks. Thus in the test project above, embedding CoreLocation is not required, and it can be deleted.