Windows 与 Asio 的奇怪错误

Strange errors on Windows with Asio

我有一个使用 boostless 版本的 Asio 的跨平台项目。在 OSX 我使用 autotools 构建库然后将其包含在我的项目中:

exec_program(COMMAND "./autogen.sh" WORKING_DIRECTORY ${asio_SOURCE_DIR}/asio)
exec_program(COMMAND "./configure --without-boost" WORKING_DIRECTORY ${asio_SOURCE_DIR}/asio)

我找不到 Windows 的说明,在 运行 宁 CMake 注意到 Asio 会生成一个 Visual Studio 文件,所以我将上面的说明围栏为 运行 仅适用于 Unix 平台。

但现在我在 Windows:

上收到 st运行ge 错误
asio\include\generic\basic_endpoint.hpp(71): error c2039: 'protocol' is not a member of 'std::basic_string<chr, std::char_traits<<char>, std::allocation<char>>'

我还有一个 asio::local::stream_protocol::endpoint 的实例,我必须将其更改为 asio::generic::stream_protocol::endpoint

所有这些代码都已编译并且 运行 在 OSX 上运行得非常好。

知道发生了什么事吗?

是的,这是一个愚蠢的。我在不存在 Unix 套接字的 Windows 上编译。

啊啊啊。