Xcode 10 "Could not build module Darwin / Foundation / CoreFoundation" 等等
Xcode 10 "Could not build module Darwin / Foundation / CoreFoundation" etc
切换到 Xcode 10 后(现在必须使用旧版构建系统),我开始收到如下所示的错误。在本地,我能够通过尽可能多地清理所有东西来修复它们,即 Derived Data / Build etc...
调试和发布 Xcode 运行 中的 运行 对我来说很好,但是我一直在努力解决 CI (bitrise) 中的这个问题。
我们使用 Fastlane,我们的 lane 有清除派生数据和执行干净构建的步骤。
clear_derived_data
build_ios_app(
workspace: "application.xcworkspace",
scheme: "application",
clean: true
)
然而这些错误不断发生(这些只是几个例子,大约有 30 个这样的错误一个接一个地指向相同的软件包,如 Darwin 等。):
❌ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:16:10: could not build module 'Darwin'
#include <sys/types.h>
^~~~~~~~
❌ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/usr/include/dispatch/dispatch.h:25:10: could not build module 'Darwin'
#include <Availability.h>
~~~~~~~~^
❌ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:10: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
~~~~~~~~^
❌ /Users/vagrant/git/packages/skimitar-app/node_modules/react-native-firebase/ios/RNFirebase/functions/RNFirebaseFunctions.h:3:9: could not build module 'Foundation'
#import <Foundation/Foundation.h>
~~~~~~~~^
编辑: 遗留构建设置是否持续存在,即如果在我们的 Xcode 中设置并承诺 git,ci 是否也会使用遗留构建系统?
- 如果您使用的是 Bitrise,请转到 'Xcode Archive & Export for iOS' 步骤。
- 向下滚动并展开 'Debug' 部分。向下滚动到 'Do a clean Xcode build before the archive?' 并将其更改为 'yes'。
- 保存您的设置开始新的构建,不要重建,因为它将使用旧设置。
我通过将构建系统设置为 Legacy 解决了这个问题。
打开PROJECT_NAME.workspace file
然后在顶部菜单selectFile > Workspace Settings
然后把Build System
改成Legacy Build System
切换到 Xcode 10 后(现在必须使用旧版构建系统),我开始收到如下所示的错误。在本地,我能够通过尽可能多地清理所有东西来修复它们,即 Derived Data / Build etc...
调试和发布 Xcode 运行 中的 运行 对我来说很好,但是我一直在努力解决 CI (bitrise) 中的这个问题。
我们使用 Fastlane,我们的 lane 有清除派生数据和执行干净构建的步骤。
clear_derived_data
build_ios_app(
workspace: "application.xcworkspace",
scheme: "application",
clean: true
)
然而这些错误不断发生(这些只是几个例子,大约有 30 个这样的错误一个接一个地指向相同的软件包,如 Darwin 等。):
❌ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:16:10: could not build module 'Darwin'
#include <sys/types.h>
^~~~~~~~
❌ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/usr/include/dispatch/dispatch.h:25:10: could not build module 'Darwin'
#include <Availability.h>
~~~~~~~~^
❌ /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:10: could not build module 'CoreFoundation'
#include <CoreFoundation/CoreFoundation.h>
~~~~~~~~^
❌ /Users/vagrant/git/packages/skimitar-app/node_modules/react-native-firebase/ios/RNFirebase/functions/RNFirebaseFunctions.h:3:9: could not build module 'Foundation'
#import <Foundation/Foundation.h>
~~~~~~~~^
编辑: 遗留构建设置是否持续存在,即如果在我们的 Xcode 中设置并承诺 git,ci 是否也会使用遗留构建系统?
- 如果您使用的是 Bitrise,请转到 'Xcode Archive & Export for iOS' 步骤。
- 向下滚动并展开 'Debug' 部分。向下滚动到 'Do a clean Xcode build before the archive?' 并将其更改为 'yes'。
- 保存您的设置开始新的构建,不要重建,因为它将使用旧设置。
我通过将构建系统设置为 Legacy 解决了这个问题。
打开PROJECT_NAME.workspace file
然后在顶部菜单selectFile > Workspace Settings
然后把Build System
改成Legacy Build System