Windows上的代码::块13.12即使使用-std=c++11也无法识别std::codecvt
Code::Blocks 13.12 on Windows not recognizing std::codecvt even with -std=c++11
我正在编译一个openFrameworks项目,该项目使用Windows8.1上的Code::Blocks 13.12上的ofxTrueTypeFont,版本为4.8.1。
它最终出现了一个错误:
...ofxTrueTypeFontUC.cpp | fatal error: codecvt: No such file or directory
我甚至在编译器标志中打开了-std=c++11
。这是一个有类似问题的人,他显然还没有找到解决办法。
我应该如何编译这个?同时,我将尝试更新mingw32-g++。。。
编辑:
看来4.8.1是最新版本。。。尽管有gcc-5.0.0。
这不是一个真正的答案,但欢迎来到现实生活中。理论上,应该有一个单独的C++引用,带有版本(C+11、C+14…),所有编译器都应该遵循这一点,允许指定的所有内容,不允许其他所有内容。
在现实世界中,编译器可以拒绝规范允许的构造,并接受规范不允许的其他构造。众所周知,2010年之前的MSVC非常不愿意标准化,gcc允许大量扩展,而且看起来你发现了一个地方,它没有完全实现C++11规范。
您可以尝试另一个接受您输入代码的编译器,也可以像上个世纪的老C程序员一样:为您的开发环境找到正确的包含文件。也许#include <locale>
就足够了。。。
顺便说一句,问题不完全在编译器部分,而是在标准库实现上。。。
相关文章:
- MSVC是否支持C++11样式的属性而不是__declspec
- 创建LinkedList退出,返回代码为-11(SIGSEGV)
- 我可以将一个用clang c++11编译的对象与另一个用c++17编译的对象链接起来吗
- 继承:构造函数,初始化C++11中基类的类C数组成员
- 如何将模板转换为C++11之前的模板
- c++11评估顺序(未定义的行为)
- C++中的VLA,扩展名为std=C++11
- 代码在我的计算机上运行良好,但是在将其提交给coursera时遇到未知的信号11问题
- "类模板示例<int>;"语句对 C++11 是什么意思?
- this_thread::sleep_for和计时时钟之间的关系是否由C++11标准指定
- 如何使用lock_guard在c++11中实现scoped_lock功能
- C++11 中不同类型的对象的 std::array 的替代方案
- 为什么 -mmacosx-version-min=10.10 不阻止使用标记为从 10.11 开始的函数?
- 为什么我的C++代码中出现'Segmentation Fault: 11'行?
- 强枚举类型定义:Clang Bug 还是 C++11 标准不确定性?
- 别名模板的专业化 C++11 中没有开销的最佳替代方案
- STLPort using C++11
- Qt 5.11.2 (Clang 8.0 (Apple), 64 位), 找不到 QJSEngine 文件
- Windows上的代码::块13.12即使使用-std=c++11也无法识别std::codecvt
- C++11 <codecvt> 标头在最新的 GCC 中可用吗?