18 Aug
18Aug



Recently the project is quite busy, don't have much time to update article, but there is a problem about Xcode14.3, I have to come out to help everyone.


Updated on April 25, this article did not expect to get a lot of responses from my friends, so I shared my experience in the comments section.


Missing libarclite_iphoneos.a 

After upgrading Xcode14.3 and compiling the project, the following error may occur:

File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphoneos.a


The reason is that the libarclite_iphoneos file is missing.
There are two solutions:
Some tripartite libraries support versions too low, specifying the version in the podfile file


post_install do |installer|
    installer.generated_projects.each do |project|
          project.targets.each do |target|
              target.build_configurations.each do |config|
                  config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
               end
          end
   end
end


Since you need to specify the version to have special requirements, you can consider copying libarclite_iphoneos.a from another version of Xcode and placing it in the corresponding directory:


open /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/

Packaging exception 

Whether it is packaged through Xcode Archive or fastlane, there will always be an error at the end. The general information is as follows:

rsync error: some files could not be transferred (code 23) at /AppleInternal/Library/BuildRoots

In the Pods file, go to Pods-project names-Frameworks.sh and make changes to the code, noting that changes are required after a subsequent pod install.


source="$(readlink "${source}")"

Replace with:

source="$(readlink -f "${source}")"



In addition, a friend reminded me that by upgrading cocopods version can solve the script exception problem, so that you should not have to upgrade cocopods to 1.12.1 each time pod install.


Comments
* The email will not be published on the website.