Skip to content

0.10.0 build fails using Carthage #615

@nakkht

Description

@nakkht

New Issue Checklist

Issue Description

Having github "grpc/grpc-swift" == "0.10.0" in Cartfile and github "grpc/grpc-swift" "0.10.0" in Cartfile.resolved and building using carthage bootstrap --platform iOS fails and yields the following output:

*** Checking out grpc-swift at "0.10.0"
*** xcodebuild output can be found in /var/folders/2y/t66flsfj7dg0bb3zym3d807m0000gn/T/carthage-xcodebuild.qb2r03.log
*** Building scheme "SwiftGRPC-Package" in SwiftGRPC-Carthage.xcodeproj
Build Failed
	Task failed with exit code 65:
	/usr/bin/xcrun xcodebuild -project /Users/.../Carthage/Checkouts/grpc-swift/SwiftGRPC-Carthage.xcodeproj -scheme SwiftGRPC-Package -configuration Release -derivedDataPath /Users/.../Library/Caches/org.carthage.CarthageKit/DerivedData/11.1_11A1027/grpc-swift/0.10.0 -sdk iphoneos ONLY_ACTIVE_ARCH=NO CODE_SIGNING_REQUIRED=NO CODE_SIGN_IDENTITY= CARTHAGE=YES archive -archivePath /var/folders/2y/t66flsfj7dg0bb3zym3d807m0000gn/T/grpc-swift SKIP_INSTALL=YES GCC_INSTRUMENT_PROGRAM_FLOW_ARCS=NO CLANG_ENABLE_CODE_COVERAGE=NO STRIP_INSTALLED_PRODUCT=NO (launched in /Users/.../Carthage/Checkouts/grpc-swift)

This usually indicates that project itself failed to compile. Please check the xcodebuild log for more details: /var/folders/2y/t66flsfj7dg0bb3zym3d807m0000gn/T/carthage-xcodebuild.qb2r03.log

Expected result: 0.10.0 version builds using Carthage

Complete output when running grpc-swift, including the stack trace and command used

carthage-xcodebuild.qb2r03.log contains the following errors:

Undefined symbols for architecture armv7:
  "_CFStringCreateWithCString", referenced from:
      CFStreamClientConnect(grpc_closure*, grpc_endpoint**, grpc_pollset_set*, grpc_channel_args const*, grpc_resolved_address const*, long long) in tcp_client_cfstream.o
  "_CFWriteStreamOpen", referenced from:
      CFStreamClientConnect(grpc_closure*, grpc_endpoint**, grpc_pollset_set*, grpc_channel_args const*, grpc_resolved_address const*, long long) in tcp_client_cfstream.o
  "_CFErrorGetCode", referenced from:
      grpc_error_create_from_cferror(char const*, int, void*, char const*) in error_cfstream.o
  "_CFErrorGetDomain", referenced from:
      grpc_error_create_from_cferror(char const*, int, void*, char const*) in error_cfstream.o
  "_CFErrorCopyDescription", referenced from:
      grpc_error_create_from_cferror(char const*, int, void*, char const*) in error_cfstream.o
  "_CFStringGetCString", referenced from:
      grpc_error_create_from_cferror(char const*, int, void*, char const*) in error_cfstream.o
  "_CFStreamCreatePairWithSocketToHost", referenced from:
      CFStreamClientConnect(grpc_closure*, grpc_endpoint**, grpc_pollset_set*, grpc_channel_args const*, grpc_resolved_address const*, long long) in tcp_client_cfstream.o
  "_CFReadStreamOpen", referenced from:
      CFStreamClientConnect(grpc_closure*, grpc_endpoint**, grpc_pollset_set*, grpc_channel_args const*, grpc_resolved_address const*, long long) in tcp_client_cfstream.o
  "_CFWriteStreamWrite", referenced from:
      WriteAction(void*, grpc_error*) in endpoint_cfstream.o
  "_CFRetain", referenced from:
      grpc_cfstream_endpoint_create(__CFReadStream*, __CFWriteStream*, char const*, grpc_resource_quota*, CFStreamHandle*) in endpoint_cfstream.o
  "_CFReadStreamRead", referenced from:
      ReadAction(void*, grpc_error*) in endpoint_cfstream.o
  "_CFReadStreamCopyError", referenced from:
      CFStreamHandle::ReadCallback(__CFReadStream*, unsigned long, void*) in cfstream_handle.o
      ReadAction(void*, grpc_error*) in endpoint_cfstream.o
      OnOpen(void*, grpc_error*) in tcp_client_cfstream.o
  "_CFReadStreamClose", referenced from:
      CFStreamShutdown(grpc_endpoint*, grpc_error*) in endpoint_cfstream.o
  "_CFWriteStreamClose", referenced from:
      CFStreamShutdown(grpc_endpoint*, grpc_error*) in endpoint_cfstream.o
  "_CFWriteStreamSetClient", referenced from:
      CFStreamHandle::CFStreamHandle(__CFReadStream*, __CFWriteStream*) in cfstream_handle.o
  "_CFRelease", referenced from:
      CFStreamHandle::ReadCallback(__CFReadStream*, unsigned long, void*) in cfstream_handle.o
      CFStreamHandle::WriteCallback(__CFWriteStream*, unsigned long, void*) in cfstream_handle.o
      CFStreamUnref(CFStreamEndpoint*, char const*, char const*, int) in endpoint_cfstream.o
      ReadAction(void*, grpc_error*) in endpoint_cfstream.o
      WriteAction(void*, grpc_error*) in endpoint_cfstream.o
      grpc_error_create_from_cferror(char const*, int, void*, char const*) in error_cfstream.o
      CFStreamClientConnect(grpc_closure*, grpc_endpoint**, grpc_pollset_set*, grpc_channel_args const*, grpc_resolved_address const*, long long) in tcp_client_cfstream.o
      ...
  "_CFReadStreamSetDispatchQueue", referenced from:
      CFStreamHandle::CFStreamHandle(__CFReadStream*, __CFWriteStream*) in cfstream_handle.o
  "_CFWriteStreamSetDispatchQueue", referenced from:
      CFStreamHandle::CFStreamHandle(__CFReadStream*, __CFWriteStream*) in cfstream_handle.o
  "_CFReadStreamSetClient", referenced from:
      CFStreamHandle::CFStreamHandle(__CFReadStream*, __CFWriteStream*) in cfstream_handle.o
  "_CFWriteStreamCopyError", referenced from:
      CFStreamHandle::WriteCallback(__CFWriteStream*, unsigned long, void*) in cfstream_handle.o
      WriteAction(void*, grpc_error*) in endpoint_cfstream.o
      OnOpen(void*, grpc_error*) in tcp_client_cfstream.o
ld: symbol(s) not found for architecture armv7
clang: error: linker command failed with exit code 1 (use -v to see invocation)

** ARCHIVE FAILED **

The following build commands failed:
SwiftCodeGeneration normal armv7
SwiftCodeGeneration normal arm64
Ld /Users/.../Library/Caches/org.carthage.CarthageKit/DerivedData/11.1_11A1027/grpc-swift/0.10.0/Build/Intermediates.noindex/ArchiveIntermediates/SwiftGRPC-Package/IntermediateBuildFilesPath/SwiftGRPC-Carthage.build/Release-iphoneos/CgRPC.build/Objects-normal/armv7/Binary/CgRPC normal armv7
(3 failures)

Environment

Key Value
OS Version 10.15
Swift Version 5.1
Xcode Version 11.1
gRPC-Swift Version 0.10.0
protoc Version 3.10.0
protoc-gen-swift Version 1.5.0
protoc-gen-swiftgrpc Version 0.9.1
Carthage Version 0.34.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions