linux - Golang - 不使用 cgo 时不允许使用 C 源文件

标签 linux ubuntu go cgo

当尝试在我的 src 目录中运行 go build 时,出现此错误:

imports runtime: C source files not allowed when not using cgo: atomic_amd64x.c defs.c float.c heapdump.c lfstack.c malloc.c mcache.c mcentral.c mem_linux.c mfixalloc.c mgc0.c mheap.c msize.c os_linux.c panic.c parfor.c proc.c runtime.c signal.c signal_amd64x.c signal_unix.c stack.c string.c sys_x86.c vdso_linux_amd64.c

当我第一次开始学习 Go 时,我在安装了 1.2 版本的 Ubuntu 笔记本电脑(14.04 LTS,64 位)上运行了 sudo apt-get install golang。运行良好,我能够构建、安装和运行应用程序。然后我运行 autoremove 来删除它,然后从 golang 网站安装 1,4。

这是怎么回事,我该如何解决?谷歌搜索错误表明它与以前安装的 go 版本有关,但我认为 autoremove 会清除它和所有依赖项(它似乎是这样,因为我确保在从安装之前在任何地方都找不到 golang来源。

有什么线索吗?

最佳答案

我通过在环境中取消设置 GOROOT 来解决这个问题。它指向另一个 Go 安装。

关于linux - Golang - 不使用 cgo 时不允许使用 C 源文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27772831/

相关文章:

json - BASH JQ 命令

linux - 如何避免在Linux中出现Linux命令消息

linux - 用于端口路由的 docker ha 代理

ubuntu - 如何在一台服务器上监控多个 Web 项目?

C 客户端服务器连接被拒绝

go - Nocopy 最小的例子?

Go Swagger 能够为异步 react 代码编写响应

linux - Ubuntu 命令日志

c - `clear` 导致 undefined reference 错误

pointers - Go:将数组的指针传递给 gob 而不进行复制?