【问题标题】:DYLD: Lazy SymbolDYLD:懒惰的符号
【发布时间】:2014-10-01 10:10:04
【问题描述】:

在 Mac 终端上执行 scanimage 后出现此错误的原因:

dyld:惰性符号绑定失败:未找到符号:_FUNCTIONName

引用自:/usr/local/lib/sane/libsane-xxxxx.1.so

预期在:平面命名空间

dyld:未找到符号:_FUNCTIONName

引用自:/usr/local/lib/sane/libsane-xxxxx.1.so

预期在:平面命名空间

跟踪/BPT 陷阱:5

【问题讨论】:

    标签: macos dyld scanning


    【解决方案1】:

    如果 dyld 找不到符号,那么您可能会遇到几个问题之一。

    1. dyld 找不到该库,因为它不存在。
    2. dyld 找不到库,因为它的链接器路径错误。
    3. dyld 在库中找不到符号,因为它由于某种原因不在库中。

    找到库后,您应该可以使用nm library | grep symbol 确定符号是否在库中。

    你没有提到你是在你的构建机器上还是在其他机器上看到这个,这将是一个线索,祝你好运。

    【讨论】:

    • 您好!我的库在 /usr/lib/ 中,但它是 .so,因为我试图让我在 linux ubuntu 中的程序也可以在 mac osx 中工作。我需要将我的 libxxx.so 转换为 libxxx.dylib 吗? mac osx 是否接受 .so 库?
    • 是的,你必须重建/或重新安装
    • @newbieMACuser 如果您打算分发该软件,那么您将必须经过更多步骤才能使其正常工作(它必须捆绑在 .app 中并且必须具有正确的 DYLD 路径设置...可能使用 (at)rpath 有点复杂,所以如果您没有工作示例,请尝试查找教程。)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-01
    • 2011-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多