[英]How to confirm a library is linked statically?
我编辑了我的 CMake 脚本,将 libcurl 与我在 Linux 上的 C++ 应用程序链接起来。
除了将 libcurl 添加到我的目标链接库之外,我还设置了 libcurl 标志DCURL_STATICLIB
。
检查此静态链接而不是动态链接的最终方法是什么?
检查此静态链接而不是动态链接的最终方法是什么?
在生成的可执行文件上运行ldd
程序。 这将为您提供动态链接到它的所有共享库的列表。 确认libcurl.so
不在列表中。
ldd my_executable
参与grep
过滤掉其他共享库可能很有用:
ldd my_executable | grep libcurl
,但是因为当libcurl
确实没有动态链接到可执行文件时不会产生 output,所以未过滤的形式至少对于确认ldd
确实有效是有用的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.