【发布时间】:2021-05-14 10:47:54
【问题描述】:
我无法在我的 go 环境中更改 CC。我使用 Windows 10 并将 Cmder 设置为 bash 作为管理员。我正在尝试使用 go get github.com/icexin/gocraft 构建和运行一个 go 程序,但我不断收到相同的错误 cgo: exec gcc: exec: "gcc": executable file not found in %PATH%。我没有安装任何第三方 gcc 编译器。这是因为我只安装了很多与 Visual Studio 一起安装的 C 和 C++ 工具,我不想用多个构建工具弄乱我的路径,也不想混淆我使用的任何依赖 Visual Studio 的 clang 版本的 C 开发工具.我的 Visual Studio clang 工具的路径是 /c/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/Llvm/bin/clang-cl.exe,它可以完美替代第三方 gcc(在 Cmder 中输入)。我尝试运行:export CC=/c/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/Llvm/bin/clang-cl.exe,export CC=/c/Program Files (x86)/Microsoft Visual Studio/2019/Community/VC/Tools/Llvm/bin/clang-cl.exe,export CC=C:\Program\ Files\ \(x86\)\Microsoft Visual Studio\2019\Community\VC\Tools\Llvm\bin\clang-cl.exe,
这些都不起作用。如何将 gcc 更改为我的 Visual Studio clang 路径?或者更改 go env CC 变量?
编辑
我发现问题在于go env CC 声明在C:\Program 之后中断。我在Windows环境变量中设置了CC,set命令,export命令和go env CC不管我怎么输入文件路径在C:\Program之后总是断掉。
编辑 2
看我不是唯一一个有这个问题的人:
https://github.com/golang/go/issues/41400
【问题讨论】:
-
Cgo 不完全支持 llvm,我相信 mingw 是 windows 的唯一选择。见github.com/golang/go/issues/17014
标签: visual-studio go gcc clang