我正在使用MinGW 5.3.0和Crypto++ 5.6.5:
C:\MinGW>g++ -std=c++11 -s -D_WIN32_WINNT=0x0501 LOG.cpp -U__STRICT_ANSI__ Decclass.cpp \
-IC:\\MinGW\\ -IC:\\MinGW\\boost -LC:\\MinGW -lssl -lcrypto -lcryptopp -lgdi32 -lPCRYPT \
-lz -ltiny -lwsock32 -lws2_32 -lShlwapi
编译会导致以下错误。
c:\mingw\cryptopp565\include\cryptopp\misc.h:287:14: error: 'mutex' in namespace 'std'
does not name a typestatic std::mutex s_mutex;
c:\mingw\cryptopp565\include\cryptopp\misc.h:296:18: error: 'mutex' is not a member of
'std'std::lock_guard<std::mutex> lock(s_mutex);
显示'mutex'不是'std'的成员
我需要另一个MinGW版本吗? 还是我可以修复这个构建本身?
mutex
? - taskinoor<mutex>
,但它基于编译器保护了该包含。请参考stdcpp.h
from 5.6.4。如果MinGW没有提供该包含,则可能需要调整该包含。由于MinGW已被放弃并且很少有人使用它,因此我们看不到太多的MinGW测试。 (我无法读取您图片中的文本内容,因此建议您发布实际的文本内容)。 - jww