【问题标题】:Handling “dyld: lazy symbol binding failed: Symbol not found” error when compiling C++ code on Mac在 Mac 上编译 C++ 代码时处理“dyld:lazy symbol binding failed: Symbol not found”错误
【发布时间】:2017-10-27 22:25:09
【问题描述】:

Mac 版本:Mac Sierra 版本 10.12.5 gcc 版本:4.8.5

在终端编译C++代码时出现的错误信息如下: dyld:惰性符号绑定失败:找不到符号:__ZNSt8__detail15_List_node_base7_M_hookEPS0_
引用自:/Users/tina/Documents/pimsa-master/samples/endophenotype/../../analyzer(专为 Mac OS X 10.12 构建)
预期在:/usr/lib/libstdc++.6.dylib

【问题讨论】:

  • 这个能回答你的问题吗? stackoverflow.com/questions/15541706/…
  • 我尝试了最后一个解决方案,但是 install_name_tool -change /usr/lib/libstdc++.6.dylib '@executable_path/libstdc++.6.dylib',这一行并没有生成我需要的dylib。另外,我不知道如何将它分发给应用程序,因为我对 C++ 太陌生(这不是应用程序)。
  • 刚在别人的帮助下试过了,可惜没用。

标签: c++ macos


【解决方案1】:

感谢您的帮助,我的一位朋友帮助我解决了这个问题。我的电脑上有两个gcc(g++),一个是用anaconda安装的,一个是在需要的位置。由于我不小心将 anaconda 设置在 bashfile 中其他位置的前面,因此它不起作用。现在通过在 bashfile 中将所需位置放在 anaconda 前面来修复它。

【讨论】:

    猜你喜欢
    • 2015-10-15
    • 2022-12-20
    • 1970-01-01
    • 1970-01-01
    • 2021-06-13
    • 2020-03-01
    • 2017-03-08
    • 2016-06-29
    • 1970-01-01
    相关资源
    最近更新 更多