我刚刚编译GCC 4.7与stdatomic.h
工作,但我似乎无法给-I
它。 stdatomic.h
似乎生活在/usr/include/c++/4.4.3
,但然后链接器告诉我它需要在附近的一堆其他文件。如果我-I
所有人,我仍然得到错误undefined reference to atomic_flag_clear_explicit
。任何想法我应该如何链接这个权利?GCC 4.7,其中包括<stdatomic.h>
2
A
回答
2
首先,如果您正在编译GCC 4.7,您不应该在GCC 4.4的目录中包含或链接什么。
其次,-I
只会影响的头文件的搜索路径。 “未定义的引用”是一个链接器错误,通常意味着它没有找到合适的库。您可以用-L
更改图书馆搜索路径。链接器没有说它没有找到一个名称正确的库,它说它没有找到一个符号,很明显它找到的库没有这个符号。我建议你有一个版本问题,可能是由安装问题引起的。
2
< GCC 4.4和4.5中的stdatomic.h>头文件来自早期的C++ 0x原子草案,但不是最终标准的一部分,因此它已从libstdC++中移除。
C++编译器支持通过C++ 11 <原子>头C++ 11个原子学,因此应使用该标头中的C++代码。
当C编译器支持C11原子学,所述< stdatomic.h>头将被再次设置。
相关问题
- 1. GCC v4.6 vs 4.7
- 2. Gcc不包括Object.h
- 3. C++编译错误(gcc 4.7)
- 4. GCC-4.7编译错误
- 5. GCC本地包括路径
- 6. gcc包括命令坏了?
- 7. 在gcc 4.7中有没有任何使用asan的方法4.7
- 8. 包括单独的HTML,其中包含代码<head>
- 9. 包括<jni.h>与ARM-Linux的gnueabi-GCC
- 10. RavenDB - 其中包括对象
- 11. QApplication与gcc 4.7编译但崩溃
- 12. gcc 4.7给我错误信息
- 13. Gcc使用sqrt不包括math.h
- 14. GCC -I不会改变包括目录
- 15. 无法链接共享库与-mx32和gcc 4.7或gcc 4.8
- 16. 在Fedora 16上安装gcc-4.7仍然显示gcc-4.6
- 17. 包括<Python.h> makefile.am
- 18. 的DirectMusic,包括<dmusici.h>
- 19. 查询使用EF“包括”包括其中
- 20. OOP C++ - A.h的错误包括B.h,其中又包括A.h
- 21. SQL不包括字段ID,其中包括以下内容
- 22. 包括<cstdio>和<stdio.h>的正确顺序?
- 23. 包括的Qt错误<windows.h>
- 24. 的<jsp:包括标签不工作的<jsp:包括页= “Remote.jsp”/>
- 25. Databinding ListView包括其列
- 26. CMake和包括其他makefiles
- 27. 排序,其包括在Python
- 28. NG-包括未在其
- 29. git - 包括其他项目
- 30. 形式包括其字段
4.7源代码包是否还附带4.7 libstdC++? – 2012-03-29 02:18:02
哦,我明白了,你的意思是我可能会链接到错误的包含?让我看看。 – 2012-03-29 02:21:01
@ K.G。 ''是标准C,而不是C++。 –
2012-03-29 05:43:26