/usr/bin/locale: 源文件不是有效的 UTF-8

/usr/bin/locale: source file is not valid UTF-8

在 macOS 中使用 g++ 编译 cpp 文件。

macOS v10.15.4

Apple clang 版本 11.0.3 (clang-1103.0.32.62)

hello.cpp

#include <iostream>
using namespace std;

int main()
{
  cout << "hello word" << endl;
  return 0;
}

在终端

g++ hell.cpp

CPLUS_INCLUDE_PATH 环境变量值不正确。

简单修复:

export CPLUS_INCLUDE_PATH=":/usr/local/include"

我在Catalina10.15.7 + gcc10.2(homebrew)上遇到了类似的问题,林伟业的CPLUS_INCLUDE_PATH方法不知何故不起作用。

手动更改 ostream header 的第 140 行

包括<语言环境>

包括“语言环境”

有效。这将阻止 ostream 通过 PATH 查找语言环境可执行文件,并强制在 ofstream header 所在的同一目录中查找语言环境 header。