试图在 Xcode 12 (beta 5) 中构建一个大型(并在 Xcode 11 上工作!)项目以准备 iOS 14。代码库以前是 Obj-C,但现在包含 Obj-C 和 Swift,并使用了Obj-C 和/或 Swift 也是如此。
我已经使用 Xcode 12 支持(目前是 1.10.0.beta 2)拉取了 Cocoapods 的新测试版。
Pod 安装成功。当我进行构建时,我在 pod 框架上收到以下错误:
为 iOS 模拟器构建,但链接为 iOS 构建的目标文件,用于架构 arm64
当我lipo -info在框架上运行时,它有:armv7s armv7 i386 x86_64 arm64。
以前,该项目的有效架构设置为:armv7、armv7s 和 arm64。
根据 Apple 的文档,在 Xcode 12 中,该设置将消失。Architectures 设置为 $(ARCHS_STANDARD)。我在排除的架构中没有设置任何内容。
任何人都知道这里可能发生什么?我还没有能够用一个更简单的项目来重现这个。
我有一个使用链接和嵌入式自定义框架的应用程序。该应用程序在 Xcode 12.2 之前为 iOS 设备和模拟器正确构建。但是,从 Xcode 12.3 开始,我收到以下错误:
Building for iOS Simulator, but the linked and embedded framework 'My.framework' was built for iOS + iOS Simulator.
该框架是为设备和模拟器构建的(正如错误所说的那样)并使用 合并lipo,因此它应该能够在任何地方运行而不会出现问题。
我在这里错过了什么吗?Xcode 12.3 是否有任何相关更改?
在使用 Xcode 13.4 beta 更新到 Catalina 10.15.4 beta 之后,它也将 Simulator 更新到 13.4 (921.4)。
应用程序在物理连接的设备上编译并正确运行,但没有任何设备的模拟器可以通过这个阶段。
我得到了错误
为 iOS 构建,但链接和嵌入式框架“App.framework”是为 iOS 模拟器构建的。
或者
为 iOS 模拟器构建,但链接和嵌入式框架“App.framework”是为 iOS 构建的。
我怎样才能解决这个问题?
升级到 Xcode 12.3 时,出现错误:
Building for iOS, but the embedded framework 'opus.framework' was built for iOS + iOS Simulator
Run Code Online (Sandbox Code Playgroud)
但更新前一切正常。
我正在尝试为.xcframework我正在使用的一些第三方库创建一个文件。按照https://appspector.com/blog/xcframeworks的说明,我
framework文件:# Archive for device
xcodebuild archive -scheme TestFramework -destination="iOS" -archivePath /tmp/xcf/ios.xcarchive -derivedDataPath /tmp/iphoneos -sdk iphoneos SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES
# Archive for simulator
xcodebuild archive -scheme TestFramework -destination="iOS Simulator" -archivePath /tmp/xcf/iossimulator.xcarchive -derivedDataPath /tmp/iphoneos -sdk iphonesimulator SKIP_INSTALL=NO BUILD_LIBRARIES_FOR_DISTRIBUTION=YES
Run Code Online (Sandbox Code Playgroud)
在这一点上,我已经得到了两个带有.swiftmodule文件的框架;一切看起来都不错。框架不附带.swiftinterface文件,但我认为没关系,因为这些是 objc 项目。然后我
frameworks组合成一个xcframework文件:# Build xcframework with two archives
xcodebuild -create-xcframework -framework /tmp/xcf/ios.xcarchive/Products/Library/Frameworks/TestFramework.framework -framework /tmp/xcf/iossimulator.xcarchive/Products/Library/Frameworks/TestFramework.framework -output /tmp/xcf/TestFramework.xcframework
Run Code Online (Sandbox Code Playgroud)
在这里,xcodebuild不会失败,但会发出一个奇怪的错误:
No 'swiftinterface' files found …Run Code Online (Sandbox Code Playgroud) 非常类似的问题,但验证工作区在 XCode 13 中不再可用。
为 ios 模拟器构建,但链接和嵌入式框架 .framework' 是为 ios 构建的
为 iOS 模拟器构建,但链接框架“****.framework”是为 iOS 构建的
这个问题还有其他解决办法吗?谢谢。
我遵循了 Mac (Big Sur) 上 nativescript 的完整安装指南。此外,在运行 tns doctor 时,一切似乎都很好。但是,当我运行 tns build ios 或 tns run ios 时,出现以下错误:
错误:为 iOS 模拟器构建,但链接和嵌入式框架“TNSWidgets.framework”是为 iOS + iOS 模拟器构建的。(在项目“projectapp”的目标“projectapp”中)。
有人可以告诉我如何解决这个问题。我安装了 nativescript 7.0.11 和 x-code 12.3
ios ×3
xcode ×3
xcode12 ×3
frameworks ×2
dart ×1
flutter ×1
lipo ×1
nativescript ×1
simulator ×1
xcode12beta5 ×1
xcode12beta6 ×1
xcode13 ×1
xcodebuild ×1