OS X:任何延迟加载DEPENDENT库(.dylib)的方法?

时间:2016-05-12 20:59:43

标签: c++ xcode macos dylib dynamic-library

依赖于C ++的库.dylib驻留在app包的Content / Frameworks中的包中。我想延迟加载该依赖库,直到我完成一些特定的初始化。

除了创建运行时加载的库之外,还有其他方法吗?使用弱链接选项会阻止.dylib在第一次引用之前加载吗?

1 个答案:

答案 0 :(得分:2)

你的意思是懒惰的链接:

ld -o test test.o -lazy_library /usr/lib/libz.dylib
ld -o test test.o -lazy-lz

首次运行Zlib压缩库时,它们都会加载Zlib压缩库。问题不是在初始化完成之前从自定义库运行例程。

弱链接意味着“如果库丢失,将其所有符号设置为NULL,不要停止”。

注意:将Zlib(/usr/lib/libz.dylib)替换为您的库。