singularity-ce-4.1.0 + go 完整安装步骤,及报错解决

singularity-ce-4.1.0 + go 1.20 完整安装步骤.

解决bug:

checking: host Go compiler (at least version 1.13)... not found!
mconfig: could not complete configuration

服务器基础环境:

阿里云服务器:

=> lsb_release -a
LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.9.2009 (Core)
Release: 7.9.2009
Codename: Core

下载软件包:

singularity-ce-4.1.0.tar.gz
go1.20.linux-amd64.tar.gz # go的版本由singularity 反馈的确定

wget https://objects.githubusercontent.com/github-production-release-asset-2e65be/364269021/795d2615-f5f5-4fdf-b9d7-bc0460cbe56e?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240219%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240219T095152Z&X-Amz-Expires=300&X-Amz-Signature=99d5e5e4e517d98baac36e05a1826e1a6e4251929294515b74a578ac9b43eec3&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=364269021&response-content-disposition=attachment%3B%20filename%3Dsingularity-ce-4.1.0.tar.gz&response-content-type=application%2Foctet-streamwget   https://go.dev/dl/go1.20.linux-amd64.tar.gz

安装软件

安装go:

wget   https://go.dev/dl/go1.20.linux-amd64.tar.gz
tar -xvf  go1.20.linux-amd64.tar.gz
cd /usr/local/go
/usr/local/go/bin/go

安装singularity:

wget https://objects.githubusercontent.com/github-production-release-asset-2e65be/364269021/795d2615-f5f5-4fdf-b9d7-bc0460cbe56e?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAVCODYLSA53PQK4ZA%2F20240219%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240219T095152Z&X-Amz-Expires=300&X-Amz-Signature=99d5e5e4e517d98baac36e05a1826e1a6e4251929294515b74a578ac9b43eec3&X-Amz-SignedHeaders=host&actor_id=0&key_id=0&repo_id=364269021&response-content-disposition=attachment%3B%20filename%3Dsingularity-ce-4.1.0.tar.gz&response-content-type=application%2Foctet-streamtar -xzf  singularity-ce-4.1.0.tar.gz
cd  singularity
./mconfig            # 通常这个位置会报错
make -C builddir
sudo make -C builddir install

常见报错1:

问题:

在安装singularity时

./mconfig
Configuring for project `singularity' with languages: C, Golang
=> running pre-basechecks project specific checks ...
=> running base system checks ...
checking: host C compiler... cc
checking: host C++ compiler... c++
checking: host Go compiler (at least version 1.20)... not found!
mconfig: could not complete configuration
解决方法:

删除原来的go版本;
安装 singularity指定的go 版本 1.20;
重新安装singularity;

安装建议:

先安装singularity,等报错信息出来,再下载安装指定版本的go。

常见警告2:

问题:
warning: GOPATH set to GOROOT (/usr/local/go) has no effectGO cmd/starter/c/starter-suid[+] GO_TAGS "sylog singularity_engine fakeroot_engine apparmor selinux seccomp"
warning: GOPATH set to GOROOT (/usr/local/go) has no effectGEN /root/singularity-ce-4.1.0/scripts/go-test
warning: GOPATH set to GOROOT (/usr/local/go) has no effectGO singularity-buildkitd[+] GO_TAGS "sylog singularity_engine fakeroot_engine apparmor selinux seccomp"
warning: GOPATH set to GOROOT (/usr/local/go) has no effect
解决方法:

这个警告表示您将 GOPATH 环境变量设置为了与 GOROOT 相同的路径,即 /usr/local/go。在 Go 中,GOROOT 和 GOPATH 是两个不同的概念,它们应该指向不同的目录:

GOROOT 是 Go 语言的安装路径,用于存放 Go 的标准库和工具链。在您的情况下,GOROOT 设置为 /usr/local/go,这表明您的 Go 已经安装在这个目录下。

GOPATH 是您的工作空间,用于存放您的 Go 项目和第三方依赖。在 Go 1.11 及之前的版本中,必须显式设置 GOPATH,但从 Go 1.11 开始引入了 Go 模块,不再强制要求设置 GOPATH,但仍然有一些情况需要使用到它,比如一些旧的项目或特定的工具依赖。

通常情况下,GOPATH 应该指向一个独立的目录,例如 $HOME/go 或 /home/用户名/go(对于 Linux 和 macOS),C:\Users\用户名\go(对于 Windows)。这样做有助于将您的 Go 项目和依赖项与 Go 的安装目录分开,使得管理更加清晰和灵活。要解决这个警告,您应该将 GOPATH 设置为与 GOROOT 不同的目录。您可以按照以下步骤进行设置:
创建一个新的目录作为您的 GOPATH,例如:

mkdir $HOME/go

在您的 shell 配置文件中(如 .bashrc、.bash_profile 或 .zshrc),设置 GOPATH 环境变量:

export GOPATH=$HOME/go

确保重新加载您的 shell 配置文件,或者重新启动终端会话:

source ~/.bashrc

通过按照以上步骤设置 GOPATH,您应该可以避免 GOPATH set to GOROOT 警告,并确保您的 Go 项目和依赖项被正确地放置在一个独立的工作空间中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/693411.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

道可云元宇宙每日资讯|杭州:重点培育元宇宙、智能型机器人等

道可云元宇宙每日简报(2024年2月20日)讯,今日元宇宙新鲜事有: 杭州:重点培育元宇宙、智能型机器人等 昨日,杭州市人民政府发布《关于进一步推动经济高质量发展的若干政策》。政策指出,以通用人…

不止提升免疫力?NMN或可预防、缓解支原体肺炎造成的肺部损伤

近期,全国多地进入呼吸道疾病高发季,支原体肺炎等相关话题频频登上各大热搜榜。 发烧、咳嗽、嗓子疼、肺炎……支原体肺炎的战线拉得挺长,过年了都还有不少人纷纷中招:发热、咳嗽,来来回回拖了一两周才好,…

JavaScript 设计模式之组合模式

组合模式 在我们日常中肯呢个会将一个表单用这种模式来创建 const Car function () { } Car.prototype.getName function () { throw new Error("需要重写该方法") } Car.prototype.getPrice function () {throw new Error("需要重写该方法") } const…

突破性创新:OpenAI推出Sora视频模型,预示视频制作技术的未来已到来!

一、前言 此页面上的所有视频均由 Sora 直接生成,未经修改。 OpenAI - Sora is an AI model that can create realistic and imaginative scenes from text instructions. 2024 年 2 月 16 日,OpenAI 发布 AI 视频模型 Sora,60 秒的一镜到底…

XML Map 端口进阶篇——常用关键字和格式化器详解

XML Map 端口是用于在不同XML之间建立关系映射的工具,允许通过拖拽操作实现源XML和目标 XML之间的数据字段映射,除此之外,XML Map 端口还提供了其它丰富多彩的功能,使用户能够更加灵活和高效的处理XML 数据映射任务,让…

以程序员的视角,看前后端分离的是否必要?

Hello,我是贝格前端工场,本篇分享一个老生常谈的话题,前后端分离是必然趋势,但也是要区分具体的场景,欢迎探讨,关注,有前端开发需求可以私信我,上车了。 一、什么是前后端分离和不分…

Bert-VITS-2 效果挺好的声音克隆工具

持中日英三语训练和推理。内置干声分离,切割和标注工具,开箱即用。请点下载量右边的符号查看镜像所对应的具体版本号。 教程地址: sjj​​​​​​​CodeWithGPU | 能复现才是好算法CodeWithGPU | GitHub AI算法复现社区,能复现…

分享一个背英语单词的方法

目录 前言 乱序记忆法 结语 前言 这是我现在正在用的背单词方法,我觉得是不错的,分享一下,希望对你有帮助。也欢迎评论点赞哟。 乱序记忆法 这种方法需要我们准备好纸,是需要我们动笔的。我坚持认为,动笔去记单词的…

人工智能专题: Sora,世界模拟器的视频生成器

今天分享的是人工智能系列深度研究报告:《人工智能专题: Sora,世界模拟器的视频生成器》。 (报告出品方:华泰证券) 报告共计:16页 来源:人工智能学派 Sora 能做什么?…

苍穹外卖——第一天nginx

放到全是英文路径的打不开 到安装路径进入cmd,输入nginx -t nginx: the configuration file E:\Astudy\nginx-1.20.2/conf/nginx.conf syntax is ok nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbid…

Fiddler工具 — 18.Fiddler抓包HTTPS请求(一)

1、Fiddler抓取HTTPS过程 第一步:Fiddler截获客户端发送给服务器的HTTPS请求,Fiddler伪装成客户端向服务器发送请求进行握手 。 第二步:服务器发回相应,Fiddler获取到服务器的CA证书, 用根证书(这里的根证…

c# Contains方法-检查集合中是否包含指定的元素

Contains 是 .NET 集合框架中许多集合类&#xff08;如 List、Array、HashSet 等&#xff09;提供的一种方法&#xff0c;用于检查集合中是否包含指定的元素。对于 List<int> 类型&#xff0c;Contains 方法会遍历列表中的所有元素&#xff0c;并判断传入的方法参数是否存…

UI自动化之使用poco进行元素的唯一定位

直接选择&#xff1a; 1.poco(text买入).click() 2.poco("android.widget.ImageView").click()相对选择、空间选择&#xff1a; 3.poco(text/name).parent().child()[0].click()正则表达式&#xff1a; 4.listpoco(textMatches".*ETF")今天主要想记录下…

c编译器学习05:与chibicc类似的minilisp编译器(待续)

minilisp项目介绍 项目地址&#xff1a;https://github.com/rui314/minilisp 作者也是rui314&#xff0c;commits也是按照模块开发提交的。 minilisp只有一个代码文件&#xff1a;https://github.com/rui314/minilisp/blob/master/minilisp.c 加注释也只有996行。 代码结构&a…

《剑指Offer》笔记题解思路技巧优化 Java版本——新版leetcode_Part_5

《剑指Offer》笔记&题解&思路&技巧&优化_Part_5 &#x1f60d;&#x1f60d;&#x1f60d; 相知&#x1f64c;&#x1f64c;&#x1f64c; 相识&#x1f622;&#x1f622;&#x1f622; 开始刷题&#x1f7e2;1. LCR 158. 库存管理 II——数组中出现次数超过一…

vue.js前端框架应用案例

Vue.js 是一种流行的前端框架&#xff0c;它可以帮助开发者构建单页应用&#xff08;SPA&#xff09;和复杂的用户界面。以下是几个 Vue.js 的案例&#xff0c;涵盖了不同领域的应用&#xff1a; Vue.js 官方文档&#xff1a;Vue.js 的官方文档本身就是一个使用 Vue.js 构建的…

SQL数据库基础语法-增删改

SQL数据库基础语法-增删改 数据库是 ​ “按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。 GeekSec专注技能竞赛培训5年&#xff0c;包含网络建设与运维和信息安全管理与评估两大赛项&#xff0c;…

synchronized原理Callable接口

synchronized原理 特点 1.synchronized既是一个悲观锁,又是个乐观锁&#xff0c;自适应的&#xff01; synchronized默认是乐观锁,但是如果发现锁竞争比较激烈,就会变成悲观锁!!2.synchronized既是轻量级锁,又是一个重量级锁,自适应&#xff01; synchronized默认是轻量…

字符串算法(算法竞赛)--最小表示法与最详细的字符串哈希

1、B站视频链接&#xff1a;F01 最小表示法_哔哩哔哩_bilibili 题目链接&#xff1a;【模板】最小表示法 - 洛谷 #include <bits/stdc.h> using namespace std; const int N7e5; int n; int s[N];int get_min(){for(int i1;i<n;i)s[ni]s[i];//字符串复制一倍int i1,j…

png图片转换tif图片格式(只有目标和背景两种颜色)

在这里以红色目标为例子&#xff0c;我的背景里面有很多颜色&#xff0c;但是我只想要红色的目标部分 &#xff08;注&#xff1a;这里的程序是将图片中的红色目标提取出来&#xff0c;其余背景全是黑色&#xff0c;如果想要其他颜色&#xff0c;请根据阈值自行修改&#xff09…