我正在开发一个用于MAC的TLSclient,我在MACOSX上有一点构建我的项目(在linux上工作得很好),最特别的是使用openssl库。
这是我的控制台错误,希望你能帮我处理:
gcc -lpthread -o *.o /opt//local/var/macports/software/openssl97/0.9.7m_0/opt/local/lib/openssl97/lib/libssl.a /opt//local/var/macports/software/openssl97/0.9.7m_0/opt/local/lib/openssl97/lib/libcrypto.a -ldl
Undefined symbols:
"_SSL_CTX_set_info_callback", referenced from:
_MTLSServer_Setup in MTLSServer.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
make: *** [mtls_server] Error 1
感谢您的帮助
答案 0 :(得分:1)
在OpenSSL 0.9.7中SSL_CTX_set_info_callback
是一个宏,您的代码正在尝试链接到一个函数。这可能意味着您没有正确的标题路径。
我对你命令行中的其他事情感到有些困惑:
-o *.o
似乎应该是-o something *.o
-lpthread
参数应该在libcrypto之后。