Skip to content

Can't build for watchOS with Carthage #3541

@wrutkowski-blinq

Description

@wrutkowski-blinq

Summary

I'm trying to fetch and build Apollo using Carthage but it fails on watchOS simulator build.

Version

0.40.0

Steps to reproduce the behavior

Cartfile

github "apollographql/apollo-ios-xcframework"

Cartfile.resolved

github "apollographql/apollo-ios-xcframework" "1.19.0"

Then run

carthage update --use-xcframeworks --platform watchOS

Logs

*** Fetching apollo-ios-xcframework
*** Checking out apollo-ios-xcframework at "1.19.0"
*** xcodebuild output can be found in /var/folders/j4/63v7kdss7rs4d8c15h3n1bh80000gn/T/carthage-xcodebuild.eW2fph.log
*** Building scheme "ApolloAPI-xcframework" in Apollo.xcworkspace
Build Failed
	Task failed with exit code 70:
	/usr/bin/xcrun xcodebuild -workspace /Users/wrutkowski/code/test-apollo-carthage/Carthage/Checkouts/apollo-ios-xcframework/Apollo.xcworkspace -scheme ApolloAPI-xcframework -configuration Release -derivedDataPath /Users/wrutkowski/Library/Caches/org.carthage.CarthageKit/DerivedData/16.3_16E140/apollo-ios-xcframework/1.19.0 -sdk watchsimulator -destination platform=watchOS\ Simulator,id=63CEACE7-3A82-407E-BA8E-482CAEEC3FCE -destination-timeout 3 ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= SUPPORTS_MACCATALYST=NO CARTHAGE=YES build VALIDATE_WORKSPACE=NO (launched in /Users/wrutkowski/code/test-apollo-carthage/Carthage/Checkouts/apollo-ios-xcframework)

This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/j4/63v7kdss7rs4d8c15h3n1bh80000gn/T/carthage-xcodebuild.eW2fph.log


LOG:
/Applications/Xcode-16.3.0.app/Contents/Developer/usr/bin/xcodebuild -workspace /Users/wrutkowski/code/test-apollo-carthage/Carthage/Checkouts/apollo-ios-xcframework/Apollo.xcworkspace -scheme ApolloAPI-xcframework -configuration Release -derivedDataPath /Users/wrutkowski/Library/Caches/org.carthage.CarthageKit/DerivedData/16.3_16E140/apollo-ios-xcframework/1.19.0 -sdk watchsimulator -destination "platform=watchOS Simulator,id=63CEACE7-3A82-407E-BA8E-482CAEEC3FCE" -destination-timeout 3 ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= SUPPORTS_MACCATALYST=NO CARTHAGE=YES build VALIDATE_WORKSPACE=NO

Build settings from command line:
    CARTHAGE = YES
    CODE_SIGN_IDENTITY =
    CODE_SIGNING_REQUIRED = NO
    ONLY_ACTIVE_ARCH = NO
    SDKROOT = watchsimulator11.4
    SUPPORTS_MACCATALYST = NO
    VALIDATE_WORKSPACE = NO

Resolve Package Graph


Resolved source packages:
  Apollo: /Users/wrutkowski/code/test-apollo-carthage/Carthage/Checkouts/apollo-ios-xcframework/apollo-ios
  SQLite.swift: https://github.com/stephencelis/SQLite.swift.git @ 0.15.3

2025-04-16 15:22:14.016 xcodebuild[14322:3938029] Writing error result bundle to /var/folders/j4/63v7kdss7rs4d8c15h3n1bh80000gn/T/ResultBundle_2025-16-04_15-22-0014.xcresult
xcodebuild: error: Unable to find a destination matching the provided destination specifier:
		{ platform:watchOS Simulator, id:63CEACE7-3A82-407E-BA8E-482CAEEC3FCE }

	Available destinations for the "ApolloAPI-xcframework" scheme:
		{ platform:macOS, arch:arm64, id:00006040-001031AC0A92801C, name:My Mac }
		{ platform:macOS, arch:x86_64, id:00006040-001031AC0A92801C, name:My Mac }
		{ platform:macOS, arch:arm64, variant:Designed for [iPad,iPhone], id:00006040-001031AC0A92801C, name:My Mac }
		{ platform:iOS, id:dvtdevice-DVTiPhonePlaceholder-iphoneos:placeholder, name:Any iOS Device }
		{ platform:iOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-iphonesimulator:placeholder, name:Any iOS Simulator Device }
		{ platform:macOS, name:Any Mac }
		{ platform:tvOS, id:dvtdevice-DVTiOSDevicePlaceholder-appletvos:placeholder, name:Any tvOS Device }
		{ platform:tvOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-appletvsimulator:placeholder, name:Any tvOS Simulator Device }
		{ platform:watchOS, id:dvtdevice-DVTiOSDevicePlaceholder-watchos:placeholder, name:Any watchOS Device }
		{ platform:watchOS Simulator, id:dvtdevice-DVTiOSDeviceSimulatorPlaceholder-watchsimulator:placeholder, name:Any watchOS Simulator Device }
		{ platform:iOS Simulator, arch:arm64, id:23DCD6BC-0360-4C73-BCB4-FE5230FE2831, OS:18.4, name:iPhone 14 Plus }
		{ platform:iOS Simulator, arch:x86_64, id:23DCD6BC-0360-4C73-BCB4-FE5230FE2831, OS:18.4, name:iPhone 14 Plus }
		{ platform:iOS Simulator, arch:arm64, id:0679F698-2A69-4674-968E-6480722E0605, OS:18.3.1, name:iPhone 15 Pro }
		{ platform:iOS Simulator, arch:x86_64, id:0679F698-2A69-4674-968E-6480722E0605, OS:18.3.1, name:iPhone 15 Pro }
		{ platform:iOS Simulator, arch:arm64, id:492EC66D-441F-4026-B96D-3D23208B5BB3, OS:18.3.1, name:iPhone 16 Pro }
		{ platform:iOS Simulator, arch:x86_64, id:492EC66D-441F-4026-B96D-3D23208B5BB3, OS:18.3.1, name:iPhone 16 Pro }
		{ platform:iOS Simulator, arch:arm64, id:2D3604A0-1DFF-45D9-AB2D-840967CC51CB, OS:18.4, name:iPhone 16 Pro }
		{ platform:iOS Simulator, arch:x86_64, id:2D3604A0-1DFF-45D9-AB2D-840967CC51CB, OS:18.4, name:iPhone 16 Pro }

Anything else?

xcrun simctl list:

...
-- watchOS 11.4 --
    Apple Watch Series 10 (46mm) (63CEACE7-3A82-407E-BA8E-482CAEEC3FCE) (Booted)
    Apple Watch Ultra (49mm) (518B0CFC-F6D3-4A45-98C8-8B5DD168B570) (Shutdown)
...

So looks like the simulator with provided UUID is there, but ApolloAPI-xcframework doesn't treat it as a run destination.

I tried using Xcode 16.2 and Xcode 16.3.

Possibly related #386

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions