通常情况下,我可以通过google方式找到解决方案,但这次不是.@H_301_2@
我正在使用64位Linux Ubuntu 11.04来编译32位Windows应用程序.我正在使用i586-mingw32msvc-gcc来编译我的C文件.@H_301_2@
TEST.CPP:@H_301_2@
@H_301_2@
#include
@H_301_2@
i586-mingw32msvc-gcc -c -m32 -mthreads -o test.o test.cpp
@H_301_2@
boost/asio/detail/socket_types.hpp:
# include
添加到makefile:-DBOOST_WINDOWS@H_301_2@
@H_301_2@
Error:
# warning Please define _WIN32_WINNT or _WIN32_WINDOWS appropriately
好的,添加到makefile:-D_WIN32_WINNT = 0x0501@H_301_2@
@H_301_2@
Error:
# error "Compiler threading support is not turned on. Please set the correct command line options for threading: -pthread (Linux),-pthreads (Solaris) or -mthreads (Mingw32)"
但我确实指定了-mthreads.
最佳答案
添加-DBOOST_HAS_THREADS可能就足够了(参见offending header中#elif定义的__GNUC__).但是,您的boost安装可能/可能是为了支持您的构建环境而不是您的目标.使用交叉编译工具链尝试building it yourself.