不匹配的c头版本

不匹配的c头版本,第1张

概述我刚刚在我的ubuntu系统上安装了g 4.8以满足一些先决条件.但现在我看到一些像这样的c编译错误: 构建命令: g -4.8 -m64 -std = c 0x -c -g -I /usr/include / jsoncpp / json -std = c 0x -MMD -MP -MF build / Debug / GNU-Linux-x86 / _ext / 803384703 / Cha 我刚刚在我的ubuntu系统上安装了g 4.8以满足一些先决条件.但现在我看到一些像这样的c编译错误:

构建命令:
g -4.8 -m64 -std = c 0x -c -g -I /usr/include / Jsoncpp / Json -std = c 0x -MMD -MP -MF build / DeBUG / GNU-Linux-x86 / _ext / 803384703 / CharNode .od -o build / DeBUG / GNU-linux-x86 / _ext / 803384703 / CharNode.o ../doublets/CharNode.cpp

错误:

In file included from /usr/include/x86_64-linux-gnu/c++/4.8/bits/c++config.h:420:0,from /usr/include/c++/4.8/bits/stl_algobase.h:59,from /usr/include/c++/4.8/bits/stl_tree.h:61,from /usr/include/c++/4.8/map:60,from ../doublets/CharNode.h:13,from ../doublets/CharNode.cpp:9:/usr/include/x86_64-linux-gnu/c++/4.8/bits/os_defines.h:44:19: error: missing binary operator before token "("#if __GliBC_PREREQ(2,15) && defined(_GNU_SOURCE)                  ^

它似乎在抱怨括号?

另外,(关于其他错误)我认为wchar.h(c99)和其他所有c 0x(C11)之间的版本不匹配.有任何想法如何获得c11标准标题并在ubuntu中安装它们?

解决方法 固定.

问题出在构建命令中:

g++-4.8 -m64 -std=c++0x -c -g -I/usr/include/Jsoncpp/Json -std=c++0x -MMD -MP -MF build/DeBUG/GNU-linux-x86/_ext/803384703/CharNode.o.d -o build/DeBUG/GNU-linux-x86/_ext/803384703/CharNode.o ../doublets/CharNode.cpp

-I命令包括在查找头文件时要搜索的目录. os_defines.h和我自己的文件都包含对具有相同名称的不同头文件的引用:features.h.我认为有一个标准的,我正在使用的Jsoncpp库中有一个.

问题是上面的-I命令过了一个目录,并且最后不应该有/ Json.标准库将此文件称为features.h,内部Jsoncpp对其自己的features.h文件执行相同 *** 作.

如果我看不起数千个生成的错误,我会看到我自己对Jsoncpp库头文件的引用导致“找不到头文件”错误,但我没有得到这么多.

总结

以上是内存溢出为你收集整理的不匹配的c头版本全部内容,希望文章能够帮你解决不匹配的c头版本所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1249599.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)

保存