"Firebase_VERSION is not defined: add -DFirebase_VERSION=... to the build invocation"
"Firebase_VERSION is not defined: add -DFirebase_VERSION=... to the build invocation"
我正在使用 fastlane 插件(aws_device_run_ios) 运行 在 aws 的设备农场中进行测试,但是当我 运行 fastlane 命令时出现一些错误,这没什么使用 AWS,我认为它与 firebase 有关,我也在项目中使用 firebase
我没有找到任何解决方案可以帮助我,这是我遇到的错误
❌ /Users/admin/Desktop/MyIOSApp/Pods/FirebaseCore/Firebase/Core/FIRVersion.m:18:2: "Firebase_VERSION 未定义:将 -DFirebase_VERSION=... 添加到构建调用中"
错误“Firebase_VERSION 未定义:将 -DFirebase_VERSION=... 添加到构建调用中”
^
❌ /Users/admin/Desktop/MyIOSApp/Pods/FirebaseCore/Firebase/Core/FIRVersion.m:22:2: "FIRCore_VERSION 未定义:将 -DFIRCore_VERSION=... 添加到构建调用中"
错误“FIRCore_VERSION 未定义:将 -DFIRCore_VERSION=... 添加到构建调用中”
^
这个 podfile 看起来像:
# Pods for MyIOSApp
pod 'Alamofire', '~> 4.7'
pod 'RSFloatInputView'
pod 'SkyFloatingLabelTextField', '~> 3.0'
pod 'SwiftyJSON'
pod 'SwiftKeychainWrapper'
pod 'Firebase/Core'
pod 'Fabric', '~> 1.9.0'
pod 'Crashlytics', '~> 3.12.0'
target 'MyIOSAppTests' do
inherit! :search_paths
pod 'Firebase/Core'
# Pods for testing
end
target 'MyIOSAppUITests' do
inherit! :search_paths
pod 'Firebase/Core'
# Pods for testing
end
这是我的 fastfile :
lane :aws_device_run_ios do
ENV['AWS_ACCESS_KEY_ID'] = '******'
ENV['AWS_SECRET_ACCESS_KEY'] = '******'
ENV['AWS_REGION'] = 'us-west-2'
#Build For Testing
xcodebuild(
scheme: 'MyIOSApp',
destination: 'generic/platform=iOS',
configuration: 'Release',
derivedDataPath: 'aws',
xcargs: "GCC_PREPROCESSOR_DEFINITIONS='AWS_UI_TEST'
ENABLE_BITCODE=NO CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO build-for-testing"
)
# Transform .app into AWS compatible IPA
aws_device_farm_package(
derrived_data_path: "aws",
configuration: "Release"
)
# RUN tests on AWS Device Farm
aws_device_farm(
device_pool: "DeviceIOS"
)
end
如何解决这个错误,在错误中提到要添加 -DFirebase_VERSION=... 我不知道如何以及在哪里做? !
请帮忙提前谢谢
看起来 fastfile 正在覆盖用于构建 FirebaseCore pod 的 GCC_PREPROCESSOR_DEFINITIONS 选项。 "GCC_PREPROCESSOR_DEFINITIONS": "FIRCore_VERSION=5.4.1 Firebase_VERSION=5.20.0"
来自 https://github.com/CocoaPods/Specs/blob/master/Specs/8/b/d/FirebaseCore/5.4.1/FirebaseCore.podspec.json#L42。
我不太了解fastlane,但xcargs
可能不是添加GCC_PREPROCESSOR_DEFINITIONS='AWS_UI_TEST'
的正确位置。它应该位于特定于构建单元测试目标的设置上,而不是影响应用中所有目标的设置。
我正在使用 fastlane 插件(aws_device_run_ios) 运行 在 aws 的设备农场中进行测试,但是当我 运行 fastlane 命令时出现一些错误,这没什么使用 AWS,我认为它与 firebase 有关,我也在项目中使用 firebase
我没有找到任何解决方案可以帮助我,这是我遇到的错误
❌ /Users/admin/Desktop/MyIOSApp/Pods/FirebaseCore/Firebase/Core/FIRVersion.m:18:2: "Firebase_VERSION 未定义:将 -DFirebase_VERSION=... 添加到构建调用中"
错误“Firebase_VERSION 未定义:将 -DFirebase_VERSION=... 添加到构建调用中”
^
❌ /Users/admin/Desktop/MyIOSApp/Pods/FirebaseCore/Firebase/Core/FIRVersion.m:22:2: "FIRCore_VERSION 未定义:将 -DFIRCore_VERSION=... 添加到构建调用中"
错误“FIRCore_VERSION 未定义:将 -DFIRCore_VERSION=... 添加到构建调用中”
^
这个 podfile 看起来像:
# Pods for MyIOSApp
pod 'Alamofire', '~> 4.7'
pod 'RSFloatInputView'
pod 'SkyFloatingLabelTextField', '~> 3.0'
pod 'SwiftyJSON'
pod 'SwiftKeychainWrapper'
pod 'Firebase/Core'
pod 'Fabric', '~> 1.9.0'
pod 'Crashlytics', '~> 3.12.0'
target 'MyIOSAppTests' do
inherit! :search_paths
pod 'Firebase/Core'
# Pods for testing
end
target 'MyIOSAppUITests' do
inherit! :search_paths
pod 'Firebase/Core'
# Pods for testing
end
这是我的 fastfile :
lane :aws_device_run_ios do
ENV['AWS_ACCESS_KEY_ID'] = '******'
ENV['AWS_SECRET_ACCESS_KEY'] = '******'
ENV['AWS_REGION'] = 'us-west-2'
#Build For Testing
xcodebuild(
scheme: 'MyIOSApp',
destination: 'generic/platform=iOS',
configuration: 'Release',
derivedDataPath: 'aws',
xcargs: "GCC_PREPROCESSOR_DEFINITIONS='AWS_UI_TEST'
ENABLE_BITCODE=NO CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO build-for-testing"
)
# Transform .app into AWS compatible IPA
aws_device_farm_package(
derrived_data_path: "aws",
configuration: "Release"
)
# RUN tests on AWS Device Farm
aws_device_farm(
device_pool: "DeviceIOS"
)
end
如何解决这个错误,在错误中提到要添加 -DFirebase_VERSION=... 我不知道如何以及在哪里做? ! 请帮忙提前谢谢
看起来 fastfile 正在覆盖用于构建 FirebaseCore pod 的 GCC_PREPROCESSOR_DEFINITIONS 选项。 "GCC_PREPROCESSOR_DEFINITIONS": "FIRCore_VERSION=5.4.1 Firebase_VERSION=5.20.0"
来自 https://github.com/CocoaPods/Specs/blob/master/Specs/8/b/d/FirebaseCore/5.4.1/FirebaseCore.podspec.json#L42。
我不太了解fastlane,但xcargs
可能不是添加GCC_PREPROCESSOR_DEFINITIONS='AWS_UI_TEST'
的正确位置。它应该位于特定于构建单元测试目标的设置上,而不是影响应用中所有目标的设置。