dyld:未加载库,原因:未找到图像

klm*_*123 30 macos gdb shared-libraries

直到本周我才正常使用gdb.现在运行gdb我看到:

(gdb) r
Starting program: /Volumes/MyProg 
dyld: Library not loaded: @rpath/libCore.so
  Referenced from: /Volumes/MyProg
  Reason: image not found
(gdb) 
Run Code Online (Sandbox Code Playgroud)

怎么解决?

我有:

  • OSX 10.9
  • 随MacPorts一起安装的GNU gdb(GDB)7.6

PS

我重新安装了gdb和Xcode.这没有用.

我看到很多关于dyld问题的问题,但显然我对OSX上的库缺乏经验,而且它们对我来说似乎毫无用处.

例如这个主题:dyld问题库未加载 但是如何再次下载库?

或者这个主题:Dyld:库没有加载 但是如何找出安装名称?什么是@rpath

Kar*_*ten 29

我在常规项目设置中使用"嵌入式二进制文件"解决了这个问题.


小智 11

我通过更改以下设置解决了这个问题

转到项目设置Your_Target-> General-> Embedded Binaries->单击+按钮并在此处添加库


klm*_*123 6

我是如何修理它的:

  1. libCore.so是一个来自ROOT框架的库,它MyProg使用.
  2. 如果我理解正确,该消息Library not loaded: @rpath/libCore.so Referenced from: /Volumes/MyProg Reason: image not found意味着链接器找到了库,但无法使用它.
  3. root,在安装过程中默认使用clang.同时我更喜欢gcc并MyProg使用gcc.
  4. 我用gcc编译器重新安装了root:

    ./configure --with-cxx = g ++ --with-cc = gcc --with-ld = g ++

  5. 我已经重新编译了MyProg.

现在我可以用gdb调试它.