我试图从另一个.dylib文件调用.dylib文件.它们位于同一个文件夹中.我这样做:
void * handle = dlopen(“./ other.dylib”,RTLD_LAZY);
但处理结束NULL和dlerror()说它无法找到它.但是,如果我使用绝对路径,它就可以工作.文档说我可以使用相对路径.我确信我的拼写和案例是正确的.
为什么会出错?
解决方法:
相对路径是相对于当前工作目录的 – 而不是相对于第一个dylib的位置
2024-02-16 22:19:19
我试图从另一个.dylib文件调用.dylib文件.它们位于同一个文件夹中.我这样做:
void * handle = dlopen(“./ other.dylib”,RTLD_LAZY);
但处理结束NULL和dlerror()说它无法找到它.但是,如果我使用绝对路径,它就可以工作.文档说我可以使用相对路径.我确信我的拼写和案例是正确的.
为什么会出错?
解决方法:
相对路径是相对于当前工作目录的 – 而不是相对于第一个dylib的位置