I am using Swift Package Manager (SPM) with a multi-module setup in my Xcode project. However, when trying to use Xcode Previews, I am encountering errors.
Could anyone help me troubleshoot this issue or suggest a workaround? I would greatly appreciate any advice or insights.
no such file or directory: '/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks/LoginFeature_-432B9D2E86C8FF2F_PackageProduct.framework/LoginFeature_-432B9D2E86C8FF2F_PackageProduct'
----------------------------------------
LinkDylibError: Failed to build AuthView.swift
Linking failed: no such file or directory: '/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks/LoginFeature_-432B9D2E86C8FF2F_PackageProduct.framework/LoginFeature_-432B9D2E86C8FF2F_PackageProduct'
clang: error: no such file or directory: '/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks/LoginFeature_-432B9D2E86C8FF2F_PackageProduct.framework/LoginFeature_-432B9D2E86C8FF2F_PackageProduct'
==================================
| BuildInvocationError
|
| /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -F /Applications/Xcode.app/Contents/SharedFrameworks-iphonesimulator -target arm64-apple-ios16.0-simulator -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk -L/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Intermediates.noindex/EagerLinkingTBDs -L/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator -L/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/lib -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Intermediates.noindex/EagerLinkingTBDs -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks -F/Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator -F/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Frameworks -iframework /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/Developer/Library/Frameworks -Xlinker -no_deduplicate -Xlinker -objc_abi_version -Xlinker 2 -fobjc-link-runtime -L/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/swift/iphonesimulator -L/usr/lib/swift -dynamiclib /Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Intermediates.noindex/StudyLegends.build/Debug-iphonesimulator/LoginFeature.build/Objects-normal/arm64/AuthView.1.preview-thunk.o -o /Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Intermediates.noindex/StudyLegends.build/Debug-iphonesimulator/LoginFeature.build/Objects-normal/arm64/AuthView.1.preview-thunk.dylib /Users/ryunosuke.shibuya/Library/Developer/Xcode/DerivedData/StudyLegends-dsbzblsktceigvdzyfekfytqihoy/Build/Intermediates.noindex/Previews/StudyLegends/Products/Debug-iphonesimulator/PackageFrameworks/LoginFeature_-432B9D2E86C8FF2F_PackageProduct.framework/LoginFeature_-432B9D2E86C8FF2F_PackageProduct -framework SwiftUI
I rewrote the bundle like this for Previews but it did not work.
import class Foundation.Bundle
import class Foundation.ProcessInfo
private class BundleFinder {}
extension Foundation.Bundle {
/// Returns the resource bundle associated with the current Swift module.
static var current: Bundle = {
let bundleName = "StudyLegends_Generated"
var candidates = [
// Bundle should be present here when the package is linked into an App.
Bundle.main.resourceURL,
// Bundle should be present here when the package is linked into a framework.
Bundle(for: BundleFinder.self).resourceURL,
// For command-line tools.
Bundle.main.bundleURL,
]
// FIX FOR PREVIEWS
if ProcessInfo.processInfo.environment["XCODE_RUNNING_FOR_PREVIEWS"] == "1" {
candidates.append(contentsOf: [
// Bundle should be present here when running previews from a different package
Bundle(for: BundleFinder.self).resourceURL?.deletingLastPathComponent().deletingLastPathComponent().deletingLastPathComponent(),
Bundle(for: BundleFinder.self).resourceURL?.deletingLastPathComponent().deletingLastPathComponent()
])
}
for candidate in candidates {
let bundlePath = candidate?.appendingPathComponent(bundleName + ".bundle")
if let bundle = bundlePath.flatMap(Bundle.init(url:)) {
return bundle
}
}
fatalError("unable to find bundle named \(bundleName)")
}()
}