使用CMake和MinGW编译POCO C++库遇Thread_WIN32.cpp __except语法错误
MinGW-w64编译POCO C++库时的__except语法错误问题
我尝试使用CMake搭配MinGW编译器构建POCO C++库时,在POCO的Thread_WIN32.cpp文件中遇到了__except相关的语法错误,推测该问题可能与编译器版本(x86_64-posix-sjlj)有关,请问有人遇到过类似问题吗?
我的环境配置:
- Windows 10系统
- MinGW-W64 x86_64-posix-sjlj-rev0 8.1.0
- CMake 3.26.0-rc1
更新1:我尝试更换为MinGW-W64 x86_64-posix-seh-rev0 8.1.0版本,但问题依旧。我还有个疑问:POCO GitHub上的Thread_WIN32.cpp文件中setThreadName函数里__try后没有__catch就直接是__except,这是合理的吗?
更新2:我了解到__try后无需__catch,直接跟__except是微软的SEH错误处理方式。但我想知道是否有办法让MinGW-w64编译器正常支持SEH?我了解到MinGW有__try1和__except1,但资料显示这可能不安全且使用难度大。
内容的提问来源于stack exchange,提问作者bababoah
相关产品推荐
相关产品推荐

