我希望知道在Linux上执行C/C++程序时加载了哪些动态库。
例如,
int main()
{
...
list = GetAllSharedLibraryFilePaths();
}
列表应包含:libm.so.6,librt.so.1,... 或路径:/lib/x86_64-linux-gnu/libm.so.6,/lib/x86_64-linux-gnu/librt.so.1...
是否有任何API可以返回所有共享库文件路径?
我知道ldd
,readelf
可以做到这一点,但我需要在加载共享库的可执行文件中使用C/C++编程来完成。
谢谢。
system("ldd")
命令并解析输出结果。 - undefined