Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Xcode 10 not being able to archive project

I'm trying to upload a new version of an app that is already in the AppStore. Previous version was uploaded using Xcode 9.4. But now Xcode 10 will be required in order to get approval.

Sadly, Xcode is not being able to archive the project, so I'm getting stuck on the first step, not even being able to generate the binary for submission.

There is no error: According to Xcode, our archiving process has more than 2000 tasks, and is just gets stuck in arbitrary task (always the same). Xcode does not crash, does not show an error and does not complain. It just can't pass that task and the IDE stays there for ever.

We tried it in different machines and also tried two versions: the previous version of the app (that can be archived with Xcode 9.4) and a new version, successfully migrated to Swift 4.2.

UPDATE:

  • Legacy building system does not work either.
  • Build for a Generic iOS Device also get stuck (not just archiving), but the software compiles and works on the simulator.
  • Tried to compile the non-migrated version selecting Swift 4 (instead of 4.2) and same results.
  • Played with optimization levels, whole vs. incremental compilation, etc., and always the same results.
  • In Xcode 9.4 it builds for Generic iOS Device nicely without changing anything.
like image 404
nbloqs Avatar asked Sep 18 '18 15:09

nbloqs


People also ask

Why is archive not available in Xcode?

Why is the Archive menu item grayed out in Xcode ? <Project name> does not contain a single–bundle application or contains multiple products. Please select another archive, or adjust your scheme to create a single–bundle application.

How do I enable archive in Xcode?

Start your archiveNavigate to your project's settings. Under iOS (or the target you want to build your app for) > Identity, you'll want to increment the Build number. For example, if the Build number was 1, you'll want to set it to 2. Then, in the top menu, under Product, click on Archive.

How do I archive an Xcode project?

The Step archives your Xcode project by running the xcodebuild archive command and then exports the archive into an . ipa file with the xcodebuild -exportArchive command. This . ipa file can be shared, installed on test devices, or uploaded to the App Store Connect.

How do I archive my iOS project?

Archive your App In Xcode with your project open, select the simulator (button near the top of the window next to your project name, typically named as a specific type of iPhone) – change it to Generic iOS Device. Open the Product menu and choose Archive. You will see the archive information. Click Validate App.


2 Answers

Finally, I removed "armv7" from "Valid Architectures" of project build settings. It archived! This means iPhone 4S is not compatible anymore. But, I don't think Apple will deprecate 4S in this way. By diving into the logs, I found that it stucks in creating dSYM symbols.

[17:15:49]: ▸ Generating 'ZUS_INHOUSE_DEV.app.dSYM'
[17:16:15]: ▸
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _lum_convert
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _ff_init_desc_hscale
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _lum_h_scale
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _ff_init_desc_cfmt_convert
[17:16:15]: ▸
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _ff_init_desc_chscale
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _chr_h_scale
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _ff_init_desc_no_chr
[17:16:15]: ▸ (arm64)  could not find object file symbol for symbol _no_chr_scale
[17:16:30]: ▸ (arm64)  could not find object file symbol for symbol _vlc_entry__audio_filter_libscaletempo_pitch
[17:16:30]: ▸
[17:16:30]: ▸
[17:16:30]: ▸
[17:16:30]: ▸
[17:16:30]: ▸
[17:16:30]: ▸
[17:16:30]: ▸ (arm64)  failed to insert symbol '_best_overlap_offset_float' in the debug map.

Thus, I guess, another workaround is change "Debug Infomation Format" from "DWARF with dSYM File" to "DWARF".

like image 132
LexTang Avatar answered Oct 10 '22 10:10

LexTang


We were able to get it to Archive with DSYM by removing optimizations for Swift Compile in the build settings.

Build Settings -> Swift Compiler - Code Generation -> Release

set to "No Optimizations"

Original fix suggested by JacobJ84 on Apple forum: https://forums.developer.apple.com/thread/115185

like image 3
Jon C Avatar answered Oct 10 '22 10:10

Jon C