如何解释和解决“dyld:未找到符号......”

时间:2017-04-07 16:08:26

标签: c++ macos-sierra dylib

因此,在尝试运行链接到外部库(uWS - https://github.com/uWebSockets/uWebSockets)的基本测试程序时遇到以下错误:

dyld: lazy symbol binding failed: Symbol not found: _uv_loop_new
  Referenced from: /usr/local/lib/libuWS.dylib
  Expected in: flat namespace

dyld: Symbol not found: _uv_loop_new
  Referenced from: /usr/local/lib/libuWS.dylib
  Expected in: flat namespace

我发现了一些与非常相似的问题相关的其他问题和答案,但他们只是谈论被引用的库(在这种情况下libuWS.dylib)无法找到它的依赖项。我已经检查了它与otool -L libuWS.dylib的依赖关系,它们都存在于应有的位置。

我注意到错误的所有其他示例都“预期”作为缺少的库,这是有道理的。我不太确定flat namespace的含义,以及如何确保符号在其中找到?

使用与Xcode一起安装的编译器使用CLion构建项目(我没有在这里更改任何设置,所以我猜这是默认的......在macOS上编码很新,对不起!)

非常感谢任何指向正确方向的指针。如果我没有提供足够的信息,请告诉我。

0 个答案:

没有答案
相关问题