gpt4 book ai didi

ios - ld :Framework not found for architecture i386

转载 作者:搜寻专家 更新时间:2023-10-30 22:15:09 26 4
gpt4 key购买 nike

我想在我的框架中测试一个方法,我写了一个简单的测试用例。但它无法执行,xcode 给我错误:

ld: framework not found V***ments for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)

我仔细检查了该框架是否已添加到嵌入式二进制文件以及构建阶段部分。

这是我的测试文件:

import XCTest

@testable import MYClass


class MYClassTests: XCTestCase {

override func setUp() {
super.setUp()
// Put setup code here. This method is called before the invocation of each test method in the class.
}

override func tearDown() {
// Put teardown code here. This method is called after the invocation of each test method in the class.
super.tearDown()
}

func testExample() {
// This is an example of a functional test case.
// Use XCTAssert and related functions to verify your tests produce the correct results.
}

func testPerformanceExample() {
// This is an example of a performance test case.
self.measureBlock {
// Put the code you want to measure the time of here.
}
}

func testInitalization() {

// tests pass when I comment the following lines.
// let one = MYClass.sharedInstance
// XCTAssertNotNil(one, "Failed to create a MYClass instance")
}
}

当我取消上面两行的注释时,我得到了 Framework not found 错误。

我也试过以下方法:

  • 框架添加到嵌入式二进制文件框架部分。
  • Embedded contains swift code 设置为 YES,因为框架包含 swift 代码。
  • 打包部分中的可执行前缀为空。 (未设置为@executable_path/Frameworks)
  • 链接中的运行路径搜索路径设置为

    $(继承)@executable_path/框架@loader_path/Frameworks

  • 我还尝试清理项目并重新启动 xcode,然后构建框架。

  • 删除了派生数据。

我不确定可能是什么问题。有什么想法吗?

最佳答案

这可能是因为该框架不是为 iOS 模拟器或您的 Mac 编译的(可能您已选择 iOS 设备作为构建目标)。

如果您有权访问框架目标的项目文件,请前往Build Settings 部分并在Build Active Architecture Only 下选择No

希望这对您有所帮助!

关于ios - ld :Framework not found for architecture i386,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34730237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com