我正在尝试将mysqlclient库添加到我的项目中。编译期间出现错误:
libs/sqlapi/lib/libmysqlclient.so: undefined reference to `X509_check_ip_asc'
libs/sqlapi/lib/libmysqlclient.so: undefined reference to `X509_check_host'
collect2: error: ld returned 1 exit status
我正在Debian 8机器上工作,我知道X509功能是在OpenSSL1.0.2中添加的,而Debian8仅提供OpenSSL1.0.1。因此,我手动安装了openssl 1.0.2s。但是我不确定那里是否一切顺利。由于代码确实可以在带有OpenSSL 1.0.2的Linux Mint上编译,因此我很确定代码本身没有错。
您能给我任何建议如何缩小错误范围吗?
谢谢!
答案 0 :(得分:0)
好的,我设法解决了这个问题。确保使用-L标志将库的正确路径提供给链接器。
所以我添加了
-L/usr/local/ssl/lib -lssl -lcrypto
我想我以前仍在使用旧的1.0.1t版本的OpenSSL进行编译。