发布网友 发布时间:2022-04-23 01:50
共1个回答
热心网友 时间:2023-10-10 16:33
可以这样理解.
当和静态库一起编译后,可执行程序将会比较大,且用ldd查看的时候,结果为“not a dynamic executable ”.
当和动态库一起编译后, 可执行程序比较小, 用ldd查看的时候, 显示可执行程序依赖很多库, 比如
$ ldd a.out
linux-vdso.so.1 => (0x00007fff9bf000)
libm.so.6 => /lib/x86_-linux-gnu/libm.so.6 (0x00007f87f)
libpthread.so.0 => /lib/x86_-linux-gnu/libpthread.so.0 (0x00007f87f)
libdl.so.2 => /lib/x86_-linux-gnu/libdl.so.2 (0x00007f87f)
libc.so.6 => /lib/x86_-linux-gnu/libc.so.6 (0x00007f87efeed000)
libgcc_s.so.1 => /lib/x86_-linux-gnu/libgcc_s.so.1 (0x00007f87efcd6000)
/lib/ld-linux-x86-.so.2 (0x00007f87f)