gpt4 book ai didi

c++ - 为什么我在编译 hello world c++ 文件时得到 "does not name a type"

转载 作者:太空宇宙 更新时间:2023-11-04 05:12:38 26 4
gpt4 key购买 nike

在我的笔记本电脑上更新我的 Arch Linux 系统后,我在尝试编译我正在处理的项目时遇到了很多编译错误。相同的代码在其他机器上编译良好。

所以,我尝试了一个小 hello world 程序,但它失败并出现相同的错误。

我花了相当长的时间试图弄清楚发生了什么,但我一无所获,所以我非常感谢任何提示。

我尝试编译的文件非常简单:

#include <iostream>

int main ()
{
std::cout << "Hello, world!\n";
return 0;
}

我这样编译:

 $ g++ -Wall -Wfatal-errors hello.cpp -o hello

并出现以下错误:

In file included from /usr/include/c++/8.2.1/memory:74,
from /usr/local/include/format.h:36,
from /usr/local/include/time.h:11,
from /usr/include/pthread.h:24,
from /usr/include/c++/8.2.1/x86_64-pc-linux-gnu/bits/gthr-default.h:35,
from /usr/include/c++/8.2.1/x86_64-pc-linux-gnu/bits/gthr.h:148,
from /usr/include/c++/8.2.1/ext/atomicity.h:35,
from /usr/include/c++/8.2.1/bits/ios_base.h:39,
from /usr/include/c++/8.2.1/ios:42,
from /usr/include/c++/8.2.1/ostream:38,
from /usr/include/c++/8.2.1/iostream:39,
from hello.cpp:4:
/usr/include/c++/8.2.1/ext/concurrence.h:124:5: error:
'__gthread_mutex_t' does not name a type; did you mean
'__pthread_mutex_s'?
__gthread_mutex_t _M_mutex;
^~~~~~~~~~~~~~~~~
__pthread_mutex_s
compilation terminated due to -Wfatal-errors

如果我删除 -Wfatal-errors 开关,我只会收到更多错误。

最佳答案

正是/usr/local/include 中的两个头文件,即 format.h 和 time.h 导致了我的问题。删除它们后,我现在可以再次编译我的项目。

关于c++ - 为什么我在编译 hello world c++ 文件时得到 "does not name a type",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53456251/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com