繁体   English   中英

openSSL mac未定义符号

[英]openSSL mac undefined symbol

我正在为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

谢谢你的帮助

在OpenSSL 0.9.7中, SSL_CTX_set_info_callback是一个宏,您的代码正在尝试链接到函数。 这可能意味着您没有正确的标题路径。

我对您的命令行中的其他内容感到有些困惑:

  • 为什么要静态链接到旧版本的OpenSSL 0.9.7。 Mac OS X的最新版本包含0.9.8。
  • -o *.o似乎是错误,应该是-o something *.o
  • -lpthread参数应在libcrypto之后。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM