当程序报错有未定义的引用,说明动态库没有链接:
示例:
CMakeFiles/my_cmake_test0.dir/src/https_post.c.o:在函数‘ssl_init’中:
https_post.c:(.text+0x2b1):对‘OPENSSL_init_ssl’未定义的引用
https_post.c:(.text+0x2c0):对‘OPENSSL_init_ssl’未定义的引用
https_post.c:(.text+0x2c5):对‘TLS_client_method’未定义的引用
https_post.c:(.text+0x2cd):对‘SSL_CTX_new’未定义的引用
改正:
target_link_libraries(my_cmake_test0 ssl crypto)
编译成功
博客指出程序报错有未定义的引用,是因为动态库没有链接,并给出示例。如在函数‘ssl_init’中出现对‘OPENSSL_init_ssl’等未定义的引用,通过添加‘target_link_libraries(my_cmake_test0 ssl crypto)’解决问题,最终编译成功。
914

被折叠的 条评论
为什么被折叠?



