[英]Boost asio error with Cygwin
我在尝试编译使用boost.asio的程序时遇到了一些奇怪的错误。 我只是下载/编译了库,所以可能在那期间出现了错误? 我在windows上使用gcc和cygwin
该程序:
#include <iostream>
#include <boost/asio.hpp>
#include <boost/date_time/posix_time/posix_time.hpp>
int main()
{
boost::asio::io_service io;
boost::asio::deadline_timer t(io, boost::posix_time::seconds(5));
t.wait();
std::cout << "Hello, world!" << std::endl;
return 0;
}
尝试编译给我这个错误信息:
In file included from /usr/local/include/boost/asio/async_result.hpp:18:0,
from /usr/local/include/boost/asio.hpp:20,
from test.cpp:27:
/usr/local/include/boost/asio/detail/config.hpp:566:5: warning: #warning Please define _WIN32_WINNT or _WIN32_WINDOWS appropriately. [-Wcpp]
# warning Please define _WIN32_WINNT or _WIN32_WINDOWS appropriately.
^
/usr/local/include/boost/asio/detail/config.hpp:567:5: warning: #warning For example, add -D_WIN32_WINNT=0x0501 to the compiler command line. [-Wcpp]
# warning For example, add -D_WIN32_WINNT=0x0501 to the compiler command line.
^
/usr/local/include/boost/asio/detail/config.hpp:568:5: warning: #warning Assuming _WIN32_WINNT=0x0501 (i.e. Windows XP target). [-Wcpp]
# warning Assuming _WIN32_WINNT=0x0501 (i.e. Windows XP target).
^
/usr/local/include/boost/asio/detail/config.hpp:592:5: error: #error You must add -D__USE_W32_SOCKETS to your compiler options.
# error You must add -D__USE_W32_SOCKETS to your compiler options.
^
In file included from /usr/local/include/boost/asio/detail/impl/posix_tss_ptr.ipp:24:0,
from /usr/local/include/boost/asio/detail/posix_tss_ptr.hpp:76,
from /usr/local/include/boost/asio/detail/tss_ptr.hpp:27,
from /usr/local/include/boost/asio/detail/call_stack.hpp:20,
from /usr/local/include/boost/asio/impl/handler_alloc_hook.ipp:19,
from /usr/local/include/boost/asio/handler_alloc_hook.hpp:80,
from /usr/local/include/boost/asio/detail/handler_alloc_helpers.hpp:21,
from /usr/local/include/boost/asio/detail/bind_handler.hpp:19,
from /usr/local/include/boost/asio/detail/wrapped_handler.hpp:18,
from /usr/local/include/boost/asio/io_service.hpp:24,
from /usr/local/include/boost/asio/basic_io_object.hpp:19,
from /usr/local/include/boost/asio/basic_socket.hpp:20,
from /usr/local/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/local/include/boost/asio.hpp:21,
from test.cpp:27:
/usr/local/include/boost/asio/error.hpp:87:31: error: a function call cannot appear in a constant-expression
BOOST_ASIO_NATIVE_ERROR(ERROR_BROKEN_PIPE),
^
/usr/local/include/boost/asio/error.hpp:140:31: error: a function call cannot appear in a constant-expression
BOOST_ASIO_NATIVE_ERROR(ERROR_OUTOFMEMORY),
^
/usr/local/include/boost/asio/error.hpp:145:31: error: a function call cannot appear in a constant-expression
BOOST_ASIO_NATIVE_ERROR(ERROR_ACCESS_DENIED),
^
/usr/local/include/boost/asio/error.hpp:153:31: error: a function call cannot appear in a constant-expression
BOOST_ASIO_NATIVE_ERROR(ERROR_BAD_UNIT),
^
/usr/local/include/boost/asio/error.hpp:164:31: error: a function call cannot appear in a constant-expression
BOOST_ASIO_NATIVE_ERROR(ERROR_OPERATION_ABORTED),
^
/usr/local/include/boost/asio/error.hpp:178:31: error: a function call cannot appear in a constant-expression
BOOST_ASIO_NATIVE_ERROR(ERROR_RETRY),
^
In file included from /usr/local/include/boost/asio/detail/socket_types.hpp:38:0,
from /usr/local/include/boost/asio/detail/impl/winsock_init.ipp:22,
from /usr/local/include/boost/asio/detail/winsock_init.hpp:125,
from /usr/local/include/boost/asio/io_service.hpp:28,
from /usr/local/include/boost/asio/basic_io_object.hpp:19,
from /usr/local/include/boost/asio/basic_socket.hpp:20,
from /usr/local/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/local/include/boost/asio.hpp:21,
from test.cpp:27:
/usr/include/w32api/winsock2.h:1004:68: error: conflicting declaration of C function ‘int gethostname(char*, int)’
WINSOCK_API_LINKAGE int WSAAPI gethostname(char *name,int namelen);
^
In file included from /usr/include/wchar.h:4:0,
from /usr/lib/gcc/x86_64-pc-cygwin/5.3.0/include/c++/cwchar:44,
from /usr/lib/gcc/x86_64-pc-cygwin/5.3.0/include/c++/bits/postypes.h:40,
from /usr/lib/gcc/x86_64-pc-cygwin/5.3.0/include/c++/iosfwd:40,
from /usr/lib/gcc/x86_64-pc-cygwin/5.3.0/include/c++/ios:38,
from /usr/lib/gcc/x86_64-pc-cygwin/5.3.0/include/c++/ostream:38,
from /usr/lib/gcc/x86_64-pc-cygwin/5.3.0/include/c++/iostream:39,
from test.cpp:26:
/usr/include/sys/unistd.h:249:6: note: previous declaration ‘int gethostname(char*, size_t)’
int _EXFUN(gethostname, (char *__name, size_t __len));
^
In file included from /usr/local/include/boost/asio/detail/winsock_init.hpp:125:0,
from /usr/local/include/boost/asio/io_service.hpp:28,
from /usr/local/include/boost/asio/basic_io_object.hpp:19,
from /usr/local/include/boost/asio/basic_socket.hpp:20,
from /usr/local/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/local/include/boost/asio.hpp:21,
from test.cpp:27:
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp: In static member function ‘static void boost::asio::detail::winsock_init_base::startup(boost::asio::detail::winsock_init_base::data&, unsigned char, unsigned char)’:
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp:36:44: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedIncrement(volatile int*)’
if (::InterlockedIncrement(&d.init_count_) == 1)
^
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp:40:45: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&d.result_, result);
^
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp: In static member function ‘static void boost::asio::detail::winsock_init_base::manual_startup(boost::asio::detail::winsock_init_base::data&)’:
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp:46:44: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedIncrement(volatile int*)’
if (::InterlockedIncrement(&d.init_count_) == 1)
^
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp:48:40: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&d.result_, 0);
^
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp: In static member function ‘static void boost::asio::detail::winsock_init_base::cleanup(boost::asio::detail::winsock_init_base::data&)’:
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp:54:44: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedDecrement(volatile int*)’
if (::InterlockedDecrement(&d.init_count_) == 0)
^
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp: In static member function ‘static void boost::asio::detail::winsock_init_base::manual_cleanup(boost::asio::detail::winsock_init_base::data&)’:
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp:62:40: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedDecrement(volatile int*)’
::InterlockedDecrement(&d.init_count_);
^
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp: In static member function ‘static void boost::asio::detail::winsock_init_base::throw_on_error(boost::asio::detail::winsock_init_base::data&)’:
/usr/local/include/boost/asio/detail/impl/winsock_init.ipp:67:55: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
long result = ::InterlockedExchangeAdd(&d.result_, 0);
^
In file included from /usr/local/include/boost/asio/impl/io_service.hpp:69:0,
from /usr/local/include/boost/asio/io_service.hpp:767,
from /usr/local/include/boost/asio/basic_io_object.hpp:19,
from /usr/local/include/boost/asio/basic_socket.hpp:20,
from /usr/local/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/local/include/boost/asio.hpp:21,
from test.cpp:27:
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp: In member function ‘bool boost::asio::detail::win_iocp_io_service::stopped() const’:
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp:84:49: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
return ::InterlockedExchangeAdd(&stopped_, 0) != 0;
^
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp: In member function ‘void boost::asio::detail::win_iocp_io_service::reset()’:
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp:90:39: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&stopped_, 0);
^
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp: In member function ‘void boost::asio::detail::win_iocp_io_service::work_started()’:
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp:96:46: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedIncrement(volatile int*)’
::InterlockedIncrement(&outstanding_work_);
^
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp: In member function ‘void boost::asio::detail::win_iocp_io_service::work_finished()’:
/usr/local/include/boost/asio/detail/win_iocp_io_service.hpp:102:50: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedDecrement(volatile int*)’
if (::InterlockedDecrement(&outstanding_work_) == 0)
^
In file included from /usr/local/include/boost/asio/detail/win_iocp_io_service.hpp:310:0,
from /usr/local/include/boost/asio/impl/io_service.hpp:69,
from /usr/local/include/boost/asio/io_service.hpp:767,
from /usr/local/include/boost/asio/basic_io_object.hpp:19,
from /usr/local/include/boost/asio/basic_socket.hpp:20,
from /usr/local/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/local/include/boost/asio.hpp:21,
from test.cpp:27:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.hpp: In member function ‘void boost::asio::detail::win_iocp_io_service::schedule_timer(boost::asio::detail::timer_queue<Time_Traits>&, const typename Time_Traits::time_type&, typename boost::asio::detail::timer_queue<Time_Traits>::per_timer_data&, boost::asio::detail::wait_op*)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.hpp:94:45: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
if (::InterlockedExchangeAdd(&shutdown_, 0) != 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.hpp: In member function ‘std::size_t boost::asio::detail::win_iocp_io_service::cancel_timer(boost::asio::detail::timer_queue<Time_Traits>&, typename boost::asio::detail::timer_queue<Time_Traits>::per_timer_data&, std::size_t)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.hpp:114:45: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
if (::InterlockedExchangeAdd(&shutdown_, 0) != 0)
^
In file included from /usr/local/include/boost/asio/detail/win_iocp_io_service.hpp:312:0,
from /usr/local/include/boost/asio/impl/io_service.hpp:69,
from /usr/local/include/boost/asio/io_service.hpp:767,
from /usr/local/include/boost/asio/basic_io_object.hpp:19,
from /usr/local/include/boost/asio/basic_socket.hpp:20,
from /usr/local/include/boost/asio/basic_datagram_socket.hpp:20,
from /usr/local/include/boost/asio.hpp:21,
from test.cpp:27:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::timer_thread_function::operator()()’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:51:63: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
while (::InterlockedExchangeAdd(&io_service_->shutdown_, 0) == 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:56:66: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&io_service_->dispatch_required_, 1);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘virtual void boost::asio::detail::win_iocp_io_service::shutdown_service()’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:93:38: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&shutdown_, 1);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:102:56: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
while (::InterlockedExchangeAdd(&outstanding_work_, 0) > 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:112:50: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedDecrement(volatile int*)’
::InterlockedDecrement(&outstanding_work_);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:125:50: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedDecrement(volatile int*)’
::InterlockedDecrement(&outstanding_work_);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘size_t boost::asio::detail::win_iocp_io_service::run(boost::system::error_code&)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:153:53: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
if (::InterlockedExchangeAdd(&outstanding_work_, 0) == 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘size_t boost::asio::detail::win_iocp_io_service::run_one(boost::system::error_code&)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:172:53: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
if (::InterlockedExchangeAdd(&outstanding_work_, 0) == 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘size_t boost::asio::detail::win_iocp_io_service::poll(boost::system::error_code& ’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:187:53: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
if (::InterlockedExchangeAdd(&outstanding_work_, 0) == 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘size_t boost::asio::detail::win_iocp_io_service::poll_one(boost::system::error_code&)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:206:53: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchangeAdd(volatile int*, int)’
if (::InterlockedExchangeAdd(&outstanding_work_, 0) == 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::stop()’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:221:41: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
if (::InterlockedExchange(&stopped_, 1) == 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:223:53: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
if (::InterlockedExchange(&stop_event_posted_, 1) == 0)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::post_deferred_completion(boost::asio::detail::win_iocp_operation*)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:247:49: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&dispatch_required_, 1);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::post_deferred_completions(boost::asio::detail::op_queue<boost::asio::detail::win_iocp_operation>&)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:268:51: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&dispatch_required_, 1);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::abandon_operations(boost::asio::detail::op_queue<boost::asio::detail::win_iocp_operation>&)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:279:46: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedDecrement(volatile int*)’
::InterlockedDecrement(&outstanding_work_);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::on_pending(boost::asio::detail::win_iocp_operation*)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:286:53: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedCompareExchange(volatile int*, int, int)’
if (::InterlockedCompareExchange(&op->ready_, 1, 0) == 1)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:295:51: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&dispatch_required_, 1);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::on_completion(boost::asio::detail::win_iocp_operation*, DWORD, DWORD)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:319:49: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&dispatch_required_, 1);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘void boost::asio::detail::win_iocp_io_service::on_completion(boost::asio::detail::win_iocp_operation*, const boost::system::error_code&, DWORD)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:341:49: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&dispatch_required_, 1);
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp: In member function ‘size_t boost::asio::detail::win_iocp_io_service::do_one(bool, boost::system::error_code&)’:
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:350:63: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedCompareExchange(volatile int*, int, int)’
if (::InterlockedCompareExchange(&dispatch_required_, 0, 1) == 1)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:399:57: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedCompareExchange(volatile int*, int, int)’
if (::InterlockedCompareExchange(&op->ready_, 1, 0) == 1)
^
/usr/local/include/boost/asio/detail/impl/win_iocp_io_service.ipp:434:51: error: cannot convert ‘long int*’ to ‘volatile int*’ for argument ‘1’ to ‘int _InterlockedExchange(volatile int*, int)’
::InterlockedExchange(&stop_event_posted_, 0);
错误会持续一段时间,但是SO会限制帖子中的字符数
我一直坚持这一点,我不知道该怎么办。 任何帮助,将不胜感激!
编辑:我编译了添加为kenba建议的Windows标志。 然而,出现相同的错误,顶部没有这些警告。
也许相关:我测试了几个其他Boost库并且它们工作正常,问题似乎与asio有关。
asio
需要知道它正在构建的Windows
版本,因此您需要设置宏_WIN32_WINNT
,请参阅使用Windows标头 。 例如,将以下内容添加到compile命令NTDDI_VERSION
和_WIN32_WINNT
设置为Windows _WIN32_WINNT
所需的值:
-DNTDDI_VERSION=NTDDI_WIN7 -D_WIN32_WINNT=_WIN32_WINNT_WIN7
另请注意,尽管boost asio
本身是一个仅头文件库,但它需要链接到boost
system
库,因此link命令将需要以下内容:
-LC:\boost\boost_1_60_0\stage\lib -lboost_system-mgw49-mt-1_60
取决于您构建boost库的位置以及您正在使用的boost
和gcc
/ mingw
版本。
我能够通过删除我的boost版本来修复问题,并使用cygwin安装程序来构建它。 不确定为什么会这样,但对于任何使用cygwin和boost的人,我建议使用安装程序。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.