将dyld直接合并到源代码中的方法?

Method to incorporate dyld directly into source code?

当我尝试打开一个二进制可执行文件时,我得到:

dyld: Library not loaded: /usr/local/lib/libpng16.16.dylib

使用 Homebrew 手动安装 libpng 后,我接下来遇到类似的错误(在同一个 dyld 库中):

dyld: Library not loaded: /usr/local/lib/libjpeg.8.dylib

使用 Homebrew 安装 libjpeg 后,出现臭名昭著的错误:

Illegal instruction: 4

而且,二进制可执行文件再次无法打开。现在我正在考虑简单地将这两个预处理器指令合并到 src 中并重新编译二进制可执行文件:

  1. 一个libpng预处理器指令
  2. 一个libjpeg预处理器指令

这是一种好方法吗?如果是,是否可以在一行中安装 dyld 库(而不是单独安装 libpnglibjpeg 以及任何其他必要的组件,因为我收到了一个 Illegal instruction: 4 即使在安装了两个之后)。

有人可以演示一种将 dyld 库代码合并到我的 src 中的干净方法吗?如有必要,我可以向 src 提供 Github link。

dyld 不是图书馆;它是操作系统中负责加载库的部分。 (使用技术术语,它是 Mac OS X 中的 动态链接器 ,例如类似于 Linux 中的 ld.so。 ) 您收到的错误消息是 dyld,表明它无法加载库。

无论如何,dyld 不是您想要(甚至可能!)"incorporate into your source" 的东西。它是 Mac OS X 上 C 运行时的核心组件,应该单独保留。

您收到的 "illegal instruction" 错误表明您的应用程序正在崩溃。这可能与您安装的库无关,但我们肯定无法调试此 "blind".