After upgrading to Xcode 8 with iOS 10, I get exactly this error. I am on latest El Capitan and using the following versions of ruby (I updated via rvm, same with 2.0.0 which is system version) and CFPropertyList:
Philipps-MacBook-Pro:mobile-sdk prakuschan$ ruby -v
ruby 2.3.0p0 (2015-12-25 revision 53290) [x86_64-darwin15]
Philipps-MacBook-Pro:mobile-sdk prakuschan$ gem list CF
*** LOCAL GEMS ***
CFPropertyList (2.3.3)
The xcodebuild -exportArchive command is executed in a shell script, and after a successful archive I get the following error:
** ARCHIVE SUCCEEDED **
2016-09-22 10:02:16.460 xcodebuild[10375:8369748] [MT] IDEDistribution: -[IDEDistributionLogging _createLoggingBundleAtPath:]: Created bundle at path '/var/folders/9y/r64c9wld0jx2yf3glsrzhhr00000gn/T/AppName_2016-09-22_10-02-16.456.xcdistributionlogs'.
2016-09-22 10:02:18.228 xcodebuild[10375:8369748] [MT] IDEDistribution: Step failed: <IDEDistributionThinningStep: 0x7fe435f9dfb0>: Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.}
error: exportArchive: No applicable devices found.
Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found." UserInfo={NSLocalizedDescription=No applicable devices found.}
** EXPORT FAILED **
When looking into the xcdistributionlogs, the IDEDistribution.standard.log contains the following lines at the very end:
2016-09-22 08:02:18 +0000 [MT] /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool exited with a signal 6
2016-09-22 08:02:18 +0000 [MT] ipatool JSON: (null)
I don't know if it is valuable, but this is the path to ipatool:
2016-09-22 08:02:17 +0000 [MT] Running /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool
Any help is highly appreciated. I already tried many suggestions found on google, but found no solution yet.
I was seeing the same issue. After searching through:
https://forums.developer.apple.com/thread/13446
And elsewhere for Xcode 7 similar issues. I realized this one is unique. You can fix it if you tweak the ipatool script in Xcode 8.
sudo vi /Applications/Xcode.app/Contents/Developer/usr/bin/ipatool
And comment out this one line:
# Check the artwork idiom.
#return nil,"the device doesn't support the app's UIDeviceFamily" unless (deviceTraits.supportedIdioms & bundle.supportedIdioms).size > 0
Found via sleuthing the ipatool command in:
/var/folders/.../IDEDistribution.standard.log
You can search for these via:
$ sudo find /private/var -name "*.xcdistributionlogs"
Relevant detail / debugging steps: https://github.com/fastlane/fastlane/issues/8737
We had the same issue "No applicable devices found"
after running
xcodebuild -exportArchive -archivePath ../bin/archive/GetSocialTestApp.xcarchive -exportPath ../bin/ -exportOptionsPlist ../../scripts/exportOptions.plist
Working solution : wrap xcodebuild
with xcbuild-safe.sh
from fastlane repo . Detailed solution described here .
As appeared, the problem was caused by rvm
environment variables, xcbuild-safe.sh
cleans them before executing xcodebuild
.
Not working solutions that we tried:
ipatool
script as described here CFPropertyList
, sqlite3
that ipatool
was complaining about I was getting the Error Domain=IDEDistributionErrorDomain Code=14 "No applicable devices found."
with my enterprise project when including a third party framework. My exportOptionsPlist
file contained the compileBitcode=NO
entry but the project itself still had bitcode on.
I also used the log at /var/folders/.../IDEDistribution.standard.log
and found a clearer error that lead me to the solution.
More info: https://developer.apple.com/library/content/technotes/tn2432/_index.html
Copy following and add it to end of your ~/.bashrc (~/.zshrc if you are using ZSH). and quit the terminal and start it again (must) .
unset RUBYLIB
unset RUBYOPT
unset BUNDLE_BIN_PATH
unset _ORIGINAL_GEM_PATH
unset BUNDLE_GEMFILE
unset GEM_HOME
unset GEM_PATH
FYI:
Since Xcode has a dependency to 2 external gems: sqlite and CFPropertyList More information https://github.com/fastlane/fastlane/issues/6495
We have to unset those variables for rbenv, rvm and when the user uses bundler Even if we do not use rbenv in some environments such as CircleCI, We also need to unset GEM_HOME and GEM_PATH explicitly. More information https://github.com/fastlane/fastlane/issues/627
That's it! Set the bitcode = no
,the error got fixed.😊
@Tom Harada answers worked for me but I wanted to find what was causing the default ipatool
to break.
It was the Google Cast 3.2 SDK, which was missing an entry it the plist framework. Updating it to 3.3 solved the export issue.
Refs: https://code.google.com/p/google-cast-sdk/issues/detail?id=954 https://github.com/fastlane/fastlane/issues/6223#issuecomment-267343853
Had a same issue with XCode 8.2.1
In my case the issue was reproducing on exporting an archive for either adhoc or appstore distribution with the following export info plist
<?xml version=1.0 encoding=UTF-8?>
<!DOCTYPE plist PUBLIC -//Apple//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd>
<plist version=1.0>
<dict>
<key>teamID</key>
<string>TEAMID</string>
<key>method</key>
<string>ad-hoc</string> # or `app-store`
<key>uploadSymbols</key>
<true/>
<key>compileBitcode</key>
<false/>
<key>uploadBitcode</key>
<false/>
</dict>
</plist>
It turned out that one of the linked frameworks was compiled using bitcode. This was pointed out from the xcode export log: IDEDistribution.stadard.log
:
error: Failed to verify bitcode in YandexMapKit.framework/YandexMapKit:
error: Bundle only contains bitcode-marker /var/folders/zb/ftpjx10s547ddmzm_ybqdm51xdv_t7/T/IDEDistributionThinningStep.NKQ/Payload/Avito.app/Frameworks/YandexMapKit.framework/YandexMapKit (armv7)
I had to manually recompile the YandexMapKit
project into iphoneos
- and iphonesimulator
- frameworks and merge them into a universal framework
At first, you need to check that if you have installed sqlite3 and CFPropertyList with gem on your mac. Use these commands to review the result in your terminal:
gem list | grep sqlite3
gem list | grep CFPropertyList
if you print nothing, then you have to install them with sudo
sudo gem install sqlite3
sudo gem install CFPropertyList
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.