在linux平台下编译程序的时候通常都会使用到CMakeLists.txt来制定编译规则, 在查找需要链接的lib时候, 通常会使用到find_package, 记录一下我之前用到的地方.
find_package 之后, 最好到FindXXX.cmake中看一下,这个库是怎样使用的.
如果没有特殊指定这个文件的路径, 路径通常是"/usr/share/cmake-XXX/Modules/FindXXX.cmake".
这里边通常会有特定的宏来表示对应的lib路径
This module will set the following variables in your project:
#
# ``OPENSSL_FOUND``
# System has the OpenSSL library.
# ``OPENSSL_INCLUDE_DIR``
# The OpenSSL include directory.
# ``OPENSSL_CRYPTO_LIBRARY``
# The OpenSSL crypto library.
# ``OPENSSL_SSL_LIBRARY``
# The OpenSSL SSL library.
# ``OPENSSL_LIBRARIES``
# All OpenSSL libraries.
# ``OPENSSL_VERSION``
# This is set to ``$major.$minor.$revision$patch`` (e.g. ``0.9.8s``).
顺便记录几条命令:
readelf -d libcurl.so (可以看一下这个so 所链接的其他动态库信息, 其中RUNPATH 指的是优先级最高的目录,如果没有就会到系统目录查找.