首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用QNX术语6.5中的不同编译标准?

如何使用QNX术语6.5中的不同编译标准?
EN

Stack Overflow用户
提问于 2018-07-02 13:14:01
回答 2查看 3K关注 0票数 0

我正在为运行QNX的Sabre i.MX6开发板构建应用程序。我使用QNXMomenticsV6.5交叉编译我的代码。我编写了一个简单的"Hello“代码,我试图用新的c标准编译它,因为我正在从事的项目需要这样做。

当我试图使用任何标志(例如-std=c99-std=c11 )进行编译时,它会在编译过程中抛出一个错误

cc: unknown Option -std=c99" or "cc: unknown Option -std=c11"

我可以看到它使用的编译器是gcc 4.4.2

我不确定这个版本的gcc是否不支持c99,或者对于QNX术语,我传递的标志是否不同。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-07-16 20:54:45

QNX6.5和gcc 4.4.2不支持C++11。更多信息见QCC文档。通过-std=c++0x-std=gun++0x获得的最好的支持是不完全的和实验性的支持。

QNX6.6包括gcc 4.7.3,它有实验C++11支持,QNX7.0使用gcc 5.4.0有完整的C++11和C++14支持。

gcc C++标准支持的详细信息可以找到在gcc标准页面上

票数 0
EN

Stack Overflow用户

发布于 2019-09-11 14:27:44

QNX6.5不支持开箱即用的C++11,因为它使用的是一个旧的GNU编译器(gcc 4.4.2)。然而,QNX软件中心有几个QNX6.5的更新,可以让您更新到GCC 4.8.3,这将得到您相当不错的C++11支持。您需要在QNX网站上创建一个帐户,然后:

  1. 从WIndows下载用于主机的Binutils 2.24 (例如win32 32-binutils-2.24.zip)。
  2. 8下载GCC 4.8.3供您的主机使用(例如win32 32-gcc-4.8.3-qnx65x.zip for Windows)。
  3. 展开这两个档案-这将创建hosttarget文件夹。
  4. 复制并粘贴新文件夹到QNX文件夹,覆盖文件。
  5. 编辑host/win32/x86/etc/qcc/gcc/default以更改默认编译器:DIR=4.8.3

编译时添加以下标志:

  • -Vgcc_ntox86_gpp到QCC (对于x86目标)获得gcc 4.8.3头。
  • -Wc,-std=c++11到QCC使其使用C++ 11。
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51137067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档