如何禁止Qt Creator自动使用特定的包含路径?

How to prohibit Qt Creator to use specific include path automatically?

我在同一台 CentOS 机器上使用 2 个不同的 GCC 版本(包含在 OS 一个和自定义一个中),我不想更换系统 GCC对于我的定制版,我使用定制版仅构建一些软件。 问题是 Qt Creator 添加 /usr/include 自动包含文件夹,因此自定义 GCC 开始使用系统 C++ 包含并崩溃并出现奇怪的错误消息,如 error: '::memchr' has not been declared。我的 *.pro 文件中的任何地方都没有 /usr/include,所以看起来 Qt Creator 自己添加了它们。 如何禁止 Qt Creator 项目使用某些特定的包含补丁以允许在具有 2 GCC 版本的机器上编译?当我在同一台机器上使用 Eclipse CDT 时,它工作得很好,因为 Eclipse 本身不添加任何东西,只使用我指定的 include 目录。

您可以使用 CXXFLAGS += -nostdinc.

这应该执行以下操作(摘自手册):

Do not search the standard system directories for header files. Only the directories you have specified with -I options (and the directory of the current file, if appropriate) are searched.

不是很优雅的回答,如果有人有更好的想法,还是欢迎大家post回答,我采纳。 因此,我在 qmakemake 命令之间添加了自定义构建步骤,并在此自定义构建步骤中使用 sed 命令动态编辑 Makefile 并删除额外的包含。这个解决方案有效,但是它很难看。