我可以更改cgo使用的默认编译器吗?

Xia*_*Zhu 5 go cgo

我正在尝试在ubuntu 14.04下执行cgo代码,好像cgo假定CC/CXXgcc/g++。我需要明确指定CC/CXX才能使用clang。我可以配置通过go的构建约束使用的默认编译器吗?

谢谢!

Jam*_*ell 6

cgo可以分别使用CC和环境变量指定所使用的 C 或 C++ 编译器CXX。例如,要使用 Clang:

CC=clang go build path/to/cgo/dependent/code.go
Run Code Online (Sandbox Code Playgroud)

变量还可以指定要传递给编译器的标志;例如,运行 GCC 并进行优化:

CC="gcc -O2" go build path/to/cgo/dependent/code.go
Run Code Online (Sandbox Code Playgroud)


小智 5

您可以通过设置环境变量来指定使用哪个编译器CC

go env -w "CC=clang"