pkg_check_modules(OPENSSL REQUIRED openssl)为什么只有crypto没有ssl
时间: 2024-03-27 19:39:06 浏览: 166
PKG.rar_Symbian pkg_pkg_pkg symbi_symbian_symbian P
在使用pkg_check_modules命令时,我们可以指定要查找的包的名称,该名称对应于.pc文件中的Name字段。如果我们使用的是OpenSSL库,那么我们需要查找的包的名称应该是"openssl",而不是"ssl"或"crypto"。
在使用pkg_check_modules命令查找OpenSSL库时,我们可以使用以下命令:
```
pkg_check_modules(OPENSSL REQUIRED openssl)
```
这将查找名为"openssl"的包,并将结果存储在名为"OPENSSL"的变量中。在这个变量中,我们可以访问OpenSSL的所有链接信息,包括OpenSSL的路径、链接选项和库名称。
如果我们只需要链接OpenSSL的crypto库,我们可以在target_link_libraries中指定链接库的名称:
```
target_link_libraries(my_target ${OPENSSL_CRYPTO_LIBRARY})
```
这将链接OpenSSL的crypto库到目标"my_target"中。如果我们需要链接OpenSSL的ssl库,我们可以在target_link_libraries中使用${OPENSSL_SSL_LIBRARY}变量指定链接库的名称。
总之,pkg_check_modules命令的参数应该与.pc文件中的Name字段相匹配,如果我们需要链接OpenSSL库的crypto库,应该使用"openssl"作为参数,然后在target_link_libraries中指定链接库的名称。
阅读全文