我正在尝试从另一个 .dylib 文件调用一个 .dylib 文件。它们在同一个文件夹中。我这样做:
void* handle = dlopen("./other.dylib", RTLD_LAZY);
但是 handle 结束时为 NULL 并且 dlerror() 说找不到它。但是,如果我使用绝对路径,它会起作用。文档说我可以使用相对路径。我确定我的拼写和大小写是正确的。
为什么会报错?
最佳答案
相对路径是相对于你当前的工作目录——而不是你的第一个 dylib 的位置
关于c++ - 相对路径的 dlopen 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5556437/