如果你的linux是中文版的。
即:执行 # echo $LANG 命令,返回的是 zh_CN.UTF-8 则会出现这个bug, 如果是 en_US.UTF-8 则没有这个问题。
这个bug的一个例子:
# go get -u github.com/mattn/go-sqlite3
# github.com/mattn/go-sqlite3
gcc: 无法识别的选项‘-no-pie’
虽然会报这个错误,第二次执行则不会报错,但是编译出来的二进制文件是有问题的。
删除 GOPATH 下 pkg/linux_amd64/github.com/mattn/go-sqlite3.a 文件再次执行就可以重现这个问题。
这个问题在 https://github.com/golang/go/issues/15900 已经看到有人提出了。 并且在 Go 1.7 版本中已经解决了。
我们就只能等 1.7 的发布了,或者把自己得 linux 改成 英文版来避免这个问题。
参考资料:
解决Linux中文乱码
http://blog.csdn.net/hongweigg/article/details/6540333