安装任何新的Cocoapod都会导致构建失败 [英] Installation of any new Cocoapod is causing build failure

查看:114
本文介绍了安装任何新的Cocoapod都会导致构建失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个简单的Xcode项目,其中已经安装了一些Pod(与Google Firebase相关)。所有这些都工作正常。但是,任何尝试安装 any 附加Pod的尝试都会导致Xcode项目无法编译。我在下面提供了两个示例。请注意,以下两个Pod均因相同的错误而失败

I have a simple Xcode project with some Pods (related to Google Firebase) already installed. Everything with these is working perfectly fine. However, any attempts to install any additional Pods is resulting in the Xcode project failing to compile. I'm providing two examples of this below. Please note that both pods below are failing with the same error

我正在尝试安装<一个href = https://github.com/bhlvoong/LBTAComponents rel = nofollow noreferrer> LBTAComponents 窗格。

I am trying to install the LBTAComponents pod.

我将 pod LBTAComponents 添加到Podfile并运行 Pod install 。然后,我构建项目,并且构建失败并出现错误 /Users/admin/testApp/Pods/leveldb-library/port/port_posix.h:77:35:使用未声明的标识符'__BYTE_ORDER'

I add pod "LBTAComponents" to the Podfile and run Pod install. I then build the project, and the build fails with error /Users/admin/testApp/Pods/leveldb-library/port/port_posix.h:77:35: Use of undeclared identifier '__BYTE_ORDER'

我已经尝试了标准的故障排除步骤,例如清理构建数据并删除派生数据文件夹。问题仍然存在

I've tried the standard troubleshooting steps, such as cleaning the build data and deleting the Derived Data folder. The issue still persists

我在AFNetwoking吊舱中遇到了类似的问题。

I am having a similar issue with the AFNetwoking pod.

我添加 pod'AFNetworking','〜> 3.0' 到Podfile并运行 Pod install 。然后我构建项目,再次构建失败并出现错误 /Users/admin/testApp/Pods/leveldb-library/port/port_posix.h:77:35:使用未声明的标识符'__BYTE_ORDER'这是

I add pod 'AFNetworking', '~> 3.0'" to the Podfile and run Pod install. I then build the project, and again the build fails with error /Users/admin/testApp/Pods/leveldb-library/port/port_posix.h:77:35: Use of undeclared identifier '__BYTE_ORDER'. This is the same error as the previous example.

同样,我之前提到的标准故障排除步骤不能解决问题。

Again, the standard troubleshooting steps I mentioned before did not resolve the issue.

我会再次强调,Google的Firebase吊舱的安装工作正常,但是随后的吊舱安装会产生上述错误。

I'll emphasize again that the installation of Google's Firebase pods is working perfectly fine. However, subsequent pod installations are producing the error I described above.

任何想法我都可以解决这个问题吗?

Any idea how I can go about correcting this? Cheers!

好的,所以尝试

作为参考,这是我的任何安装新的Pods的原因。 Podfile:

For reference, here is my Podfile:

# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'App' do
  # Comment the next line if you don't want to use dynamic frameworks
  use_frameworks!

  # Pods for App
  pod 'Firebase'
  pod 'Firebase/Analytics'
  pod 'Firebase/Auth'
  pod 'Firebase/Storage'
  pod 'Firebase/Firestore'
  pod 'Firebase/Database'

  target 'AppTests' do
    inherit! :search_paths
    # Pods for testing
    pod 'Firebase'
    pod 'Firebase/Analytics'
    pod 'Firebase/Auth'
    pod 'Firebase/Storage'
    pod 'Firebase/Firestore'
    pod 'Firebase/Database'
  end

  target 'AppUITests' do
    inherit! :search_paths
    # Pods for testing
    pod 'Firebase'
    pod 'Firebase/Analytics'
    pod 'Firebase/Auth'
    pod 'Firebase/Storage'
    pod 'Firebase/Firestore'
    pod 'Firebase/Database'
  end

end

和我的Podfile.lock:

and my Podfile.lock:

PODS:
  - BoringSSL-GRPC (0.0.3):
    - BoringSSL-GRPC/Implementation (= 0.0.3)
    - BoringSSL-GRPC/Interface (= 0.0.3)
  - BoringSSL-GRPC/Implementation (0.0.3):
    - BoringSSL-GRPC/Interface (= 0.0.3)
  - BoringSSL-GRPC/Interface (0.0.3)
  - Firebase (6.9.0):
    - Firebase/Core (= 6.9.0)
  - Firebase/Analytics (6.9.0):
    - Firebase/Core
  - Firebase/Auth (6.9.0):
    - Firebase/CoreOnly
    - FirebaseAuth (~> 6.2.3)
  - Firebase/Core (6.9.0):
    - Firebase/CoreOnly
    - FirebaseAnalytics (= 6.1.2)
  - Firebase/CoreOnly (6.9.0):
    - FirebaseCore (= 6.3.0)
  - Firebase/Database (6.9.0):
    - Firebase/CoreOnly
    - FirebaseDatabase (~> 6.1.0)
  - Firebase/Firestore (6.9.0):
    - Firebase/CoreOnly
    - FirebaseFirestore (~> 1.5.1)
  - Firebase/Storage (6.9.0):
    - Firebase/CoreOnly
    - FirebaseStorage (~> 3.4.1)
  - FirebaseAnalytics (6.1.2):
    - FirebaseCore (~> 6.3)
    - FirebaseInstanceID (~> 4.2)
    - GoogleAppMeasurement (= 6.1.2)
    - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
    - GoogleUtilities/MethodSwizzler (~> 6.0)
    - GoogleUtilities/Network (~> 6.0)
    - "GoogleUtilities/NSData+zlib (~> 6.0)"
    - nanopb (~> 0.3)
  - FirebaseAuth (6.2.3):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.2)
    - GoogleUtilities/AppDelegateSwizzler (~> 6.2)
    - GoogleUtilities/Environment (~> 6.2)
    - GTMSessionFetcher/Core (~> 1.1)
  - FirebaseAuthInterop (1.0.0)
  - FirebaseCore (6.3.0):
    - FirebaseCoreDiagnostics (~> 1.0)
    - FirebaseCoreDiagnosticsInterop (~> 1.0)
    - GoogleUtilities/Environment (~> 6.2)
    - GoogleUtilities/Logger (~> 6.2)
  - FirebaseCoreDiagnostics (1.1.0):
    - FirebaseCoreDiagnosticsInterop (~> 1.0)
    - GoogleDataTransportCCTSupport (~> 1.0)
    - GoogleUtilities/Environment (~> 6.2)
    - GoogleUtilities/Logger (~> 6.2)
  - FirebaseCoreDiagnosticsInterop (1.0.0)
  - FirebaseDatabase (6.1.0):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.0)
    - leveldb-library (~> 1.18)
  - FirebaseFirestore (1.5.1):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.2)
    - FirebaseFirestore/abseil-cpp (= 1.5.1)
    - "gRPC-C++ (= 0.0.9)"
    - leveldb-library (~> 1.22)
    - nanopb (~> 0.3.901)
    - Protobuf (~> 3.1)
  - FirebaseFirestore/abseil-cpp (1.5.1):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.2)
    - "gRPC-C++ (= 0.0.9)"
    - leveldb-library (~> 1.22)
    - nanopb (~> 0.3.901)
    - Protobuf (~> 3.1)
  - FirebaseInstanceID (4.2.5):
    - FirebaseCore (~> 6.0)
    - GoogleUtilities/Environment (~> 6.0)
    - GoogleUtilities/UserDefaults (~> 6.0)
  - FirebaseStorage (3.4.1):
    - FirebaseAuthInterop (~> 1.0)
    - FirebaseCore (~> 6.0)
    - GTMSessionFetcher/Core (~> 1.1)
  - GoogleAppMeasurement (6.1.2):
    - GoogleUtilities/AppDelegateSwizzler (~> 6.0)
    - GoogleUtilities/MethodSwizzler (~> 6.0)
    - GoogleUtilities/Network (~> 6.0)
    - "GoogleUtilities/NSData+zlib (~> 6.0)"
    - nanopb (~> 0.3)
  - GoogleDataTransport (2.0.0)
  - GoogleDataTransportCCTSupport (1.1.0):
    - GoogleDataTransport (~> 2.0)
    - nanopb
  - GoogleUtilities/AppDelegateSwizzler (6.3.1):
    - GoogleUtilities/Environment
    - GoogleUtilities/Logger
    - GoogleUtilities/Network
  - GoogleUtilities/Environment (6.3.1)
  - GoogleUtilities/Logger (6.3.1):
    - GoogleUtilities/Environment
  - GoogleUtilities/MethodSwizzler (6.3.1):
    - GoogleUtilities/Logger
  - GoogleUtilities/Network (6.3.1):
    - GoogleUtilities/Logger
    - "GoogleUtilities/NSData+zlib"
    - GoogleUtilities/Reachability
  - "GoogleUtilities/NSData+zlib (6.3.1)"
  - GoogleUtilities/Reachability (6.3.1):
    - GoogleUtilities/Logger
  - GoogleUtilities/UserDefaults (6.3.1):
    - GoogleUtilities/Logger
  - "gRPC-C++ (0.0.9)":
    - "gRPC-C++/Implementation (= 0.0.9)"
    - "gRPC-C++/Interface (= 0.0.9)"
  - "gRPC-C++/Implementation (0.0.9)":
    - "gRPC-C++/Interface (= 0.0.9)"
    - gRPC-Core (= 1.21.0)
    - nanopb (~> 0.3)
  - "gRPC-C++/Interface (0.0.9)"
  - gRPC-Core (1.21.0):
    - gRPC-Core/Implementation (= 1.21.0)
    - gRPC-Core/Interface (= 1.21.0)
  - gRPC-Core/Implementation (1.21.0):
    - BoringSSL-GRPC (= 0.0.3)
    - gRPC-Core/Interface (= 1.21.0)
    - nanopb (~> 0.3)
  - gRPC-Core/Interface (1.21.0)
  - GTMSessionFetcher/Core (1.2.2)
  - leveldb-library (1.22)
  - nanopb (0.3.901):
    - nanopb/decode (= 0.3.901)
    - nanopb/encode (= 0.3.901)
  - nanopb/decode (0.3.901)
  - nanopb/encode (0.3.901)
  - Protobuf (3.10.0)

DEPENDENCIES:
  - Firebase
  - Firebase/Analytics
  - Firebase/Auth
  - Firebase/Database
  - Firebase/Firestore
  - Firebase/Storage

SPEC REPOS:
  https://github.com/cocoapods/specs.git:
    - BoringSSL-GRPC
    - Firebase
    - FirebaseAnalytics
    - FirebaseAuth
    - FirebaseAuthInterop
    - FirebaseCore
    - FirebaseCoreDiagnostics
    - FirebaseCoreDiagnosticsInterop
    - FirebaseDatabase
    - FirebaseFirestore
    - FirebaseInstanceID
    - FirebaseStorage
    - GoogleAppMeasurement
    - GoogleDataTransport
    - GoogleDataTransportCCTSupport
    - GoogleUtilities
    - "gRPC-C++"
    - gRPC-Core
    - GTMSessionFetcher
    - leveldb-library
    - nanopb
    - Protobuf

SPEC CHECKSUMS:
  BoringSSL-GRPC: db8764df3204ccea016e1c8dd15d9a9ad63ff318
  Firebase: 2d750c54cda57d5a6ae31212cfe5cc813c6be7e4
  FirebaseAnalytics: 5d9ccbf46ed25d3ec9304d263f85bddf1e93e2d2
  FirebaseAuth: e7f86c2dfc57281cd01f7da5e4b40e01e4510a4a
  FirebaseAuthInterop: 0ffa57668be100582bb7643d4fcb7615496c41fc
  FirebaseCore: 8b2765c445d40db7137989b7146a3aa3f91b5529
  FirebaseCoreDiagnostics: be4f7a09d02ab305f18de59a470412caddb64c2a
  FirebaseCoreDiagnosticsInterop: 6829da2b8d1fc795ff1bd99df751d3788035d2cb
  FirebaseDatabase: 518cd94286de2ee999e19383a2a6ae04c81ce993
  FirebaseFirestore: 5ee8bdb959541f0d55352f2d681efb03b9742a43
  FirebaseInstanceID: 550df9be1f99f751d8fcde3ac342a1e21a0e6c42
  FirebaseStorage: b7c6d00997bc21d4465453bdcc5cc65513110fed
  GoogleAppMeasurement: 0ae90be1cc4dad40f4a27fc767ef59fa032ec87b
  GoogleDataTransport: c8617c00e4f3eb9418e42ac0e8ac5241a9d555dd
  GoogleDataTransportCCTSupport: 9f352523e8785a71f6754f51eeff09f49ec19268
  GoogleUtilities: f895fde57977df4e0233edda0dbeac490e3703b6
  "gRPC-C++": 9dfe7b44821e7b3e44aacad2af29d2c21f7cde83
  gRPC-Core: c9aef9a261a1247e881b18059b84d597293c9947
  GTMSessionFetcher: 61bb0f61a4cb560030f1222021178008a5727a23
  leveldb-library: 55d93ee664b4007aac644a782d11da33fba316f7
  nanopb: 2901f78ea1b7b4015c860c2fdd1ea2fee1a18d48
  Protobuf: a4dc852ad69c027ca2166ed287b856697814375b

PODFILE CHECKSUM: a068de7f759e79161ece809834082ef4236e1f53

COCOAPODS: 1.7.5


推荐答案


构建因错误而失败 /Users/admin/testApp/Pods/leveldb-library/port/port_posix.h:77:35 :使用未声明的标识符'__BYTE_ORDER'与前面的示例相同。

如果您阅读错误,您会看到有问题的Pod是leveldb-library。快速的 pod搜索leveldb库将我们指向 leveldb-库Github repo ,我们应该可以在其中找到有问题的文件。查看Podfile.lock,您正在从Firebase继承对leveldb-library的依赖关系。该leveldb库吊舱有点奇怪-回购中的大多数标签都带有'v',例如 v1.20 ,但是有一些缺少'v',例如 1.22 。如果您查看 port 目录在 1.22 标记中,您将看到没有文件名提到 posix ,但是如果您可以在 v1.20 标记,您会找到该错误抱怨的 port_posix.h 文件。

If you read the error, you'll see that the offending pod is leveldb-library. A quick pod search leveldb-library points us to the leveldb-library Github repo, where we should be able to find the offending file. Looking at your Podfile.lock, you're inheriting the dependency on leveldb-library from Firebase. There's something a little weird about that leveldb-library pod -- most of the tags in the repo have a 'v', like v1.20, but a few are missing the 'v', such as 1.22. If you look at the port directory in the 1.22 tag, you'll see that none of the file names mention posix, but if you look in the v1.20 tag you'll find the port_posix.h file that the error complains about.

因此,看起来您的 leveldb-library pod副本中有一些过时的文件,您可能应该将其清除并重新安装。您可以执行IIRC:

So, it looks like maybe you've some outdated files in your copy of the leveldb-library pod, and you should probably just clear that out and install it again. IIRC you can do:

pod clean leveldb-library

之后:

pod install

,您应该得到一个全新的副本。如果仍不能解决问题,请继续深入研究您所拥有的那个Pod的副本,并确保它与Pod仓库中的内容匹配。您还可以进行 pod更新,因为您在Firebase上至少落后一个版本。

and you should get a fresh copy. If that doesn't solve the problem, continue to dig into exactly which copy of that pod you've got and make sure it matches what's in the pod's repo. You could also do a pod update since you're at least one version behind on Firebase.

这篇关于安装任何新的Cocoapod都会导致构建失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆