dlopen 库路径语法
dlopen library path syntax
我正在为 android(尤其是 android M)编译库,我想问一下,当我使用 dlopen();
函数时,库的正确语法是什么路径?
哪一个是正确的?
第一个:
libcameraHandle = ::dlopen("/system/lib/libseccameraadaptor.so", RTLD_LAZY);
所以路径是:/system/lib/libseccameraadaptor.so
或第二个:
libcameraHandle = ::dlopen("libseccameraadaptor.so", RTLD_LAZY);
所以路径是libseccameraadaptor.so
我还发现了一些对于这个特定主题可能是很好的信息,但不太理解 look into cool hacks/opengl section
第二种语法在标准路径和LD_LIBRARY_PATH
中指定的路径中搜索libseccameraadaptor.so
。对于像这样将永远存在于 /system/lib
中的标准库,它并没有太大的区别。对于其他任何事情,如果库被移动到不同的地方,第二次调用可能会更健壮。
我正在为 android(尤其是 android M)编译库,我想问一下,当我使用 dlopen();
函数时,库的正确语法是什么路径?
哪一个是正确的?
第一个:
libcameraHandle = ::dlopen("/system/lib/libseccameraadaptor.so", RTLD_LAZY);
所以路径是:/system/lib/libseccameraadaptor.so
或第二个:
libcameraHandle = ::dlopen("libseccameraadaptor.so", RTLD_LAZY);
所以路径是libseccameraadaptor.so
我还发现了一些对于这个特定主题可能是很好的信息,但不太理解 look into cool hacks/opengl section
第二种语法在标准路径和LD_LIBRARY_PATH
中指定的路径中搜索libseccameraadaptor.so
。对于像这样将永远存在于 /system/lib
中的标准库,它并没有太大的区别。对于其他任何事情,如果库被移动到不同的地方,第二次调用可能会更健壮。