Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Exit code 70 "Unable to find a destination matching the provided destination specifier" #2364

Closed
ryanmaksymic opened this issue Mar 5, 2018 · 10 comments
Labels

Comments

@ryanmaksymic
Copy link

ryanmaksymic commented Mar 5, 2018

  • carthage install method: [ ] .pkg, [ X ] homebrew, [ ] source
  • which carthage: /usr/local/bin/carthage
  • carthage version: 0.28.0
  • xcodebuild -version: 9.2 / 9C40b
  • Are you using --no-build? No
  • Are you using --no-use-binaries? No
  • Are you using --use-submodules? No
  • Are you using --cache-builds? No
  • Are you using --new-resolver? No

Cartfile

github "parse-community/Parse-SDK-iOS-OSX"

Carthage Output

➜ carthage update --platform iOS
*** Fetching Parse-SDK-iOS-OSX
*** Fetching Bolts-ObjC
*** Checking out Bolts-ObjC at "1.9.0"
*** Downloading Parse-SDK-iOS-OSX.framework binary at "1.16.0"
*** Checking out Parse-SDK-iOS-OSX at "1.16.0"
*** xcodebuild output can be found in /var/folders/t8/y_21wjv9541b220x61qwq7s40000gp/T/carthage-xcodebuild.FKDMfe.log
*** Building scheme "Bolts-iOS-Dynamic" in Bolts.xcodeproj
Build Failed
	Task failed with exit code 70:
	/usr/bin/xcrun xcodebuild -project /Users/ryanmaksymic/Work/Lighthouse\ Labs/Week\ 8/W8D1/Carthage/Checkouts/Bolts-ObjC/Bolts.xcodeproj -scheme Bolts-iOS-Dynamic -configuration Release -derivedDataPath /Users/ryanmaksymic/Library/Caches/org.carthage.CarthageKit/DerivedData/9.2_9C40b/Bolts-ObjC/1.9.0 -sdk iphonesimulator -destination platform=iOS\ Simulator,id=CE1675FE-9A90-4776-A1B3-3D771724843D -destination-timeout 3 ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES build (launched in /Users/ryanmaksymic/Work/Lighthouse Labs/Week 8/W8D1/Carthage/Checkouts/Bolts-ObjC)

This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/t8/y_21wjv9541b220x61qwq7s40000gp/T/carthage-xcodebuild.FKDMfe.log

End part of the xcodebuild log:

Build settings from command line:
    CARTHAGE = YES
    CODE_SIGN_IDENTITY = 
    CODE_SIGNING_REQUIRED = NO
    ONLY_ACTIVE_ARCH = NO
    SDKROOT = iphonesimulator11.2

xcodebuild: error: Unable to find a destination matching the provided destination specifier:
		{ platform:iOS Simulator, id:CE1675FE-9A90-4776-A1B3-3D771724843D }

	Available destinations for the "Bolts-iOS-Dynamic" scheme:
		{ platform:iOS Simulator, id:D6BF7774-CA3B-4F7B-89D2-F42B65482676, OS:11.2, name:iPhone 8 }
		{ platform:iOS Simulator, id:B0459CDA-70F6-4492-BC36-1C027B6CB864, OS:11.2, name:iPhone X }

	Ineligible destinations for the "Bolts-iOS-Dynamic" scheme:
		{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Generic iOS Device }
		{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Generic iOS Simulator Device }

Actual outcome
Build failed.

Expected outcome
Build not failed.

I'm brand new to Carthage, so bear with me. I've tried with multiple projects; I've cleared derived data; I've uninstalled and reinstalled Carthage.

Any help is greatly appreciated!

@tmspzz
Copy link
Member

tmspzz commented Mar 5, 2018

To me this looks like the simulator Carthage is trying to pick up to build for x86 is not available. Can you check what simulators you actually have on your system?

@tmspzz
Copy link
Member

tmspzz commented Mar 7, 2018

Hi @ryanmaksymic
I have tried with 0.28.0 and I see no problem on my machine. This is a problem with your setup and specifically simulators not being available.

$ carthage update --platform iOS
*** Cloning Parse-SDK-iOS-OSX
*** Cloning Bolts-ObjC
*** Checking out Bolts-ObjC at "1.9.0"
*** Downloading Parse-SDK-iOS-OSX.framework binary at "1.16.0"
*** Checking out Parse-SDK-iOS-OSX at "1.16.0"
*** xcodebuild output can be found in /var/folders/pn/14183n6j2bz0s2_qlcqtg5_00000gn/T/carthage-xcodebuild.Kat8hY.log
*** Building scheme "Bolts-iOS-Dynamic" in Bolts.xcodeproj
*** Building scheme "Parse-iOS-Dynamic" in Parse.xcworkspace
*** Building scheme "ParseFacebookUtilsV4-iOS-Dynamic" in Parse.xcworkspace
*** Building scheme "ParseTwitterUtils-iOS-Dynamic" in Parse.xcworkspace
*** Building scheme "ParseUI-Dynamic" in Parse.xcworkspace

I will close the issue for now, feel free to further comment if you still think it's a Carthage problem and can provide evidence.

@tmspzz tmspzz closed this as completed Mar 7, 2018
@tmspzz tmspzz added the question label Mar 7, 2018
@elitalon
Copy link

@blender I'm experiencing the same issue with 0.28.0:

Build Failed
	Task failed with exit code 70:
	/usr/bin/xcrun xcodebuild -workspace /Users/elitalon/Projects/<redacted>/Carthage/Checkouts/Alamofire/Alamofire.xcworkspace -scheme Alamofire\ iOS -configuration Release -derivedDataPath /Users/elitalon/Library/Caches/org.carthage.CarthageKit/DerivedData/9.2_9C40b/Alamofire/4.6.0 -sdk iphonesimulator -destination platform=iOS\ Simulator,id=877D9C3E-7E6D-435B-A407-01D9350465A1 -destination-timeout 3 ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES build (launched in /Users/elitalon/Projects/<redacted>/Carthage/Checkouts/Alamofire)User defaults from command line:
    IDEDerivedDataPathOverride = /Users/elitalon/Library/Caches/org.carthage.CarthageKit/DerivedData/9.2_9C40b/Alamofire/4.6.0

Build settings from command line:
    CARTHAGE = YES
    CODE_SIGN_IDENTITY = 
    CODE_SIGNING_REQUIRED = NO
    ONLY_ACTIVE_ARCH = NO
    SDKROOT = iphonesimulator11.2

xcodebuild: error: Unable to find a destination matching the provided destination specifier:
		{ platform:iOS Simulator, id:877D9C3E-7E6D-435B-A407-01D9350465A1 }

	Available destinations for the "Alamofire iOS" scheme:
		{ platform:iOS Simulator, id:793291A7-701E-457F-B4DB-9E99C00A804A, OS:11.2, name:iPad Air 2 – 11.2 }
		{ platform:iOS Simulator, id:282DAA32-D058-474D-B96B-02C19FEE2D67, OS:11.2, name:iPhone 7 – 11.2 }
		{ platform:iOS Simulator, id:1C13EBF6-B3EB-455F-8192-0129261024C9, OS:11.2, name:iPhone SE – 11.2 }
		{ platform:iOS Simulator, id:7864AD7E-F71C-44EA-A927-50879C4B1129, OS:11.2, name:iPhone X – 11.2 }

	Ineligible destinations for the "Alamofire iOS" scheme:
		{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Generic iOS Device }
		{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Generic iOS Simulator Device }

However the device is listed in the output of xcrun simctl list. Note that I changed the names of the simulators to append "– 11.2".

It might be a long shot but I upgraded from Sierra to High Sierra last week. And I'm using a case-sensitive filesystem. Maybe it has something to do with that.

Can I provide any more information?

@jdhealy
Copy link
Member

jdhealy commented Mar 19, 2018

@elitalon thanks, that’s helpful… Could you post xcodebuild -version?

@tmspzz
Copy link
Member

tmspzz commented Mar 19, 2018

It seems to me that you have a broken list of simulators

xcodebuild: error: Unable to find a destination matching the provided destination specifier:
		{ platform:iOS Simulator, id:877D9C3E-7E6D-435B-A407-01D9350465A1 }

This id does not appear in the list of simulators further down in your output

@elitalon
Copy link

elitalon commented Mar 19, 2018

@jdhealy Well, you got me in the middle of reinstalling Xcode 9.2, so it'll take a few minutes before I can provide that output 😅

@blender I agree. Something weird is happening because the output of xcrun simctl list (I ran it separately after the command failed) differs from the one from xcodebuild above. But I don't understand why.

@elitalon
Copy link

elitalon commented Mar 19, 2018

So this is my environment:

Carthage

carthage install method: [ ] .pkg, [x] homebrew, [ ] source
which carthage: /usr/local/bin/carthage
carthage version: 0.28.0
xcodebuild -version: 9.2 / 9C40b
Are you using --no-build? No
Are you using --no-use-binaries? No
Are you using --use-submodules? No
Are you using --cache-builds? Yes
Are you using --new-resolver? No

SDKs

xcodebuild -showsdks
iOS SDKs:
	iOS 11.2                      	-sdk iphoneos11.2

iOS Simulator SDKs:
	Simulator - iOS 11.2          	-sdk iphonesimulator11.2

macOS SDKs:
	macOS 10.13                   	-sdk macosx10.13

tvOS SDKs:
	tvOS 11.2                     	-sdk appletvos11.2

tvOS Simulator SDKs:
	Simulator - tvOS 11.2         	-sdk appletvsimulator11.2

watchOS SDKs:
	watchOS 4.2                   	-sdk watchos4.2

watchOS Simulator SDKs:
	Simulator - watchOS 4.2       	-sdk watchsimulator4.2

@elitalon
Copy link

elitalon commented Mar 19, 2018

Ok, I managed to solve the issue.

After reinstalling Xcode I realised it still listed the devices from the previous installation. So I went ahead and deleted all entries (i.e. simulators) under ~/Library/Developer/CoreSimulator/Devices. I ran carthage bootstrap --platform iOS again and it built everything without a problem.

My guess is that when you modify a simulator (e.g. renaming it) Xcode creates a copy in ~/Library/Developer/CoreSimulator/Devices. So Carthage correctly tries to build the project using the first compatible and available simulator for the platform (available as in listed on xcrun simctl list). But xcodebuild seems to prioritise the list of simulators under ~/Library/Developer/CoreSimulator/Devices, causing a mismatch and hence the error above.

If my theory is correct, I'm not sure whether this is an issue on Carthage, Xcode or both.

@ryanmaksymic
Copy link
Author

@elitalon Thank you! The problem was indeed with my Devices folder. After a few failed attempts I managed to properly reset the list of simulators by going through these steps and restarting my machine.

@Shinehah-Gnolaum
Copy link

Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants