20210118golang测试单元(1) - ziyouzy/2021blog GitHub Wiki
这个其实不是很难,请看文章:
https://zhuanlan.zhihu.com/p/91072465
这是基础的使用规则,但是需要先安装gcc,这似乎是测试组件所必需的组成单元,缺少gcc会报如下错误:
# runtime/cgo
exec: "gcc": executable file not found in $PATH
FAIL heartbeating [build failed]
如下文章有做解释:
https://blog.csdn.net/zhh763984017/article/details/102971284
安装gcc:
https://www.cnblogs.com/lsc666js/p/13423418.html
似乎可以gcc,g++,make一并安装,似乎早晚都会用到
sudo apt install build-essential
然而缺少依赖库:
The following packages have unmet dependencies:
build-essential : Depends: libc6-dev but it is not going to be installed or
libc-dev
Depends: g++ (>= 4:5.2) but it is not going to be installed
Depends: dpkg-dev (>= 1.17.11) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.
解决问题的文章:
https://blog.csdn.net/duanlove/article/details/54666441
“问题在于,当前系统以安装的 libc6的版本为“2.19-10ubuntu2 ” ,而我们安装其他软件(包括build-essential 、g++等)的时候,所依赖的是“2.19-0ubuntu6.9” 。也就是问题在于, 依赖的某个软件的版本,跟系统以安装的版本不一致。但 apt-get又不会自动去卸载以安装的自动安装上依赖的目标版本。 所以导致我们需要手动去解决这个问题。 当前解决这个问题办法有很多种,我们这里选择了,直接强制覆盖安装目标版本,替代原来系统已安装的版本”
使用dpkg -l | grep libc6查询我的版本:
ii libc6:amd64 2.27-3ubuntu1.2 amd64 GNU C Library: Shared libraries ii libc6-dbg:amd64 2.27-3ubuntu1.2 amd64 GNU C Library: detached debugging symbols
确实存在同样的问题
文章的版本更新方案是直接覆盖旧版本,不是很认同,但是去找了其他解决方法,覆盖确实是主流的解决方案,相关文章:
https://blog.csdn.net/qinglingls/article/details/106318989
解决方式如下:
sudo apt-get install libc6=2.19-0ubuntu6.9
遇到了新问题,远程找不到包
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Version '2.19-0ubuntu6.9' for 'libc6' was not found