0

我正在研究 libmosquitto 库,并且在我的 Mac 上的库上设置 TLS 时遇到了一些麻烦。 

当我在启用 TLS 和 TLS_PSK 的情况下进行编译时,我收到错误“架构 x86_64 的未定义符号”。 

据我了解,编译器应该是 g++ 而不是 mac 中的默认 gcc。(我可能是错的)。如果是这样,我需要在 make 文件中进行哪些更改?

有人可以指导我如何在 64 bot 架构的 mac 上生成启用了 TLS 和 TLS_PSK 的 libmosquitto 文件吗? 

更新:我得到了要编译的应用程序库。问题在于 xcode 版本之间的冲突。

我现在有一个不同的问题。当我使用 mosquitto_tls_set 时,会跳过整个函数并以 MOSQ_ERR_NOT_SUPPORTED 响应。

这里正在检查一个预处理器值 WITH_TLS。我在代码中的哪里启用它?我已经遵守了源文件 WITH_TLS

4

2 回答 2

1

所以问题是当我从 XCode(我的 IDE)编译代码时预处理器没有设置。我不得不使用预处理器宏来设置 WITH_TLS 标志,瞧它起作用了。

于 2014-10-08T01:55:00.657 回答
0

如果您需要使用 g++ 而不是 gcc,我会感到惊讶。

无论如何,正确的解决方案是要么使用brew install mosquitto,要么使用 cmake 生成 Makefiles / XCode 项目文件。

于 2014-10-08T08:00:03.853 回答