vxworks 中的 C++ 11
C++ 11 in vxworks
我是VxWorks的新手,我正在VxWorks平台上使用C++开发一个软件。我想知道VxWorks编译器是否支持C++11标准。我问这个问题的原因是因为没有 shrink_to_fit() std::vector 函数可用(这个函数是在 c++ 11 标准中引入的)。所以我想知道有什么办法可以在VxWorks中用C++ 11标准编译代码。
我假设您使用的是 WindRiver (diab) 编译器,这也是我们用于 VxWorks 平台的编译器。如果是这样的话,我在他们的网站上找到了一份 pdf 文件,其中非常清楚地概述了它们仅符合 C++03。
Support for ANSI C89, C99, and C++ 2003
显然,VxWorks 也有 GNU 和 ICC 编译器支持,但我不太熟悉它们如何与 VxWorks 一起工作。
vxWorks 有可用的 g++ 商业版本,支持 c++11。据我所知,这些 g++ 端口可用于 vxWorks 7.0 或更高版本。
仅在VxWorks 7中。VxWorks7附带的diab仍然不支持C++11。
GnatPro 17.1 附带 gcc 6.2.1 并可与 VxWorks 一起使用。
您可能对以下内容感兴趣:
http://en.cppreference.com/w/cpp/compiler_support
使用新的 Vxworks 7 SR600,clang 编译器支持 C++11。
最新的 vxworks 版本支持 c++17(C++17、Boost、Python 和 Rust 集合)
https://www.windriver.com/news/press/pr.html?ID=22444
我在 real-time 嵌入式系统方面工作了大约 25 年,主要是在航空电子领域,我记得,标准模板库通常是不允许的,因为它们使用不受控制的动态内存分配和不受控制的线程创建。也许这已经改变了,但这可能就是为什么大多数 VXworks 版本都避开 STL 的原因。
我是VxWorks的新手,我正在VxWorks平台上使用C++开发一个软件。我想知道VxWorks编译器是否支持C++11标准。我问这个问题的原因是因为没有 shrink_to_fit() std::vector 函数可用(这个函数是在 c++ 11 标准中引入的)。所以我想知道有什么办法可以在VxWorks中用C++ 11标准编译代码。
我假设您使用的是 WindRiver (diab) 编译器,这也是我们用于 VxWorks 平台的编译器。如果是这样的话,我在他们的网站上找到了一份 pdf 文件,其中非常清楚地概述了它们仅符合 C++03。
Support for ANSI C89, C99, and C++ 2003
显然,VxWorks 也有 GNU 和 ICC 编译器支持,但我不太熟悉它们如何与 VxWorks 一起工作。
vxWorks 有可用的 g++ 商业版本,支持 c++11。据我所知,这些 g++ 端口可用于 vxWorks 7.0 或更高版本。
仅在VxWorks 7中。VxWorks7附带的diab仍然不支持C++11。
GnatPro 17.1 附带 gcc 6.2.1 并可与 VxWorks 一起使用。
您可能对以下内容感兴趣: http://en.cppreference.com/w/cpp/compiler_support
使用新的 Vxworks 7 SR600,clang 编译器支持 C++11。
最新的 vxworks 版本支持 c++17(C++17、Boost、Python 和 Rust 集合) https://www.windriver.com/news/press/pr.html?ID=22444
我在 real-time 嵌入式系统方面工作了大约 25 年,主要是在航空电子领域,我记得,标准模板库通常是不允许的,因为它们使用不受控制的动态内存分配和不受控制的线程创建。也许这已经改变了,但这可能就是为什么大多数 VXworks 版本都避开 STL 的原因。