更新到 Monterey 后无法在 Mac 上使用 gcc 编译 c++ 程序
Can't compile c++ program using gcc on Mac after updating to Monterey
*更新:
关于类似的问题macos-wchar-h-file-not-found,命令行工具开关(xcode-select --install) 已经不存在了
我 运行 在 macOS Monterey 系统上,我正在尝试使用 g++-11 命令编译一个简单的 hello world .cpp 文件(我使用自制软件安装了 gcc),我收到以下错误:
/usr/local/Cellar/gcc/11.2.0_3/include/c++/11/cwchar:44:10: fatal error: wchar.h: No such file or directory
44 | #include <wchar.h>
| ^~~~~~~~~
我尝试了两个编译命令:
g++-11 -c hello.cpp -o hell.o
g++-11 -std=c++11 -c hello.cpp -o hell.o
这是我要编译的文件:
//
// main.cpp
// Test
//
// Created by Jiali Zhu on 1/9/22.
//
#include <iostream>
int main(int argc, const char * argv[]) {
// insert code here...
std::cout << "Hello, World!\n";
return 0;
}
我也有同样的问题,在我的情况下问题已经过时了
命令行开发工具。
我是通过运行
发现的
$ brew doctor
...
Warning: Your Command Line Tools are too outdated.
Update them from Software Update in System Preferences or run:
softwareupdate --all --install --force
If that doesn't show you any updates, run:
sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install
Alternatively, manually download them from:
https://developer.apple.com/download/all/.
You should download the Command Line Tools for Xcode 13.1.
我试图通过 softwareupdate -l
更新它们,但是这并没有给我任何更新信息。
所以删除它们并使用 xcode-select --install
重新安装。
在此之后 g++-11
停止给我有关此 header 的错误。
现在 brew config
告诉我我有 CLT: 13.0.0.0.1.1627064638
P.S.
我也启动了xcode,它问我是否需要安装额外的组件,我说是。
*更新: 关于类似的问题macos-wchar-h-file-not-found,命令行工具开关(xcode-select --install) 已经不存在了
我 运行 在 macOS Monterey 系统上,我正在尝试使用 g++-11 命令编译一个简单的 hello world .cpp 文件(我使用自制软件安装了 gcc),我收到以下错误:
/usr/local/Cellar/gcc/11.2.0_3/include/c++/11/cwchar:44:10: fatal error: wchar.h: No such file or directory
44 | #include <wchar.h>
| ^~~~~~~~~
我尝试了两个编译命令:
g++-11 -c hello.cpp -o hell.o
g++-11 -std=c++11 -c hello.cpp -o hell.o
这是我要编译的文件:
//
// main.cpp
// Test
//
// Created by Jiali Zhu on 1/9/22.
//
#include <iostream>
int main(int argc, const char * argv[]) {
// insert code here...
std::cout << "Hello, World!\n";
return 0;
}
我也有同样的问题,在我的情况下问题已经过时了 命令行开发工具。
我是通过运行
发现的$ brew doctor
...
Warning: Your Command Line Tools are too outdated.
Update them from Software Update in System Preferences or run:
softwareupdate --all --install --force
If that doesn't show you any updates, run:
sudo rm -rf /Library/Developer/CommandLineTools
sudo xcode-select --install
Alternatively, manually download them from:
https://developer.apple.com/download/all/.
You should download the Command Line Tools for Xcode 13.1.
我试图通过 softwareupdate -l
更新它们,但是这并没有给我任何更新信息。
所以删除它们并使用 xcode-select --install
重新安装。
在此之后 g++-11
停止给我有关此 header 的错误。
现在 brew config
告诉我我有 CLT: 13.0.0.0.1.1627064638
P.S.
我也启动了xcode,它问我是否需要安装额外的组件,我说是。