質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.47%
Singularity(コンテナ)

Singularity(コンテナ)は、科学・高性能コンピューティング(HPC)環境用に設計されたオープンソースベースのLinuxコンテナソフトウェア。アプリ本体と動作に必要なライブラリ・データをパッケージ化できます。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

Q&A

0回答

217閲覧

singularityモジュールのmconfig実行時にGo compilerのバージョンが古いと表示されて進めません

3booking

総合スコア1

Singularity(コンテナ)

Singularity(コンテナ)は、科学・高性能コンピューティング(HPC)環境用に設計されたオープンソースベースのLinuxコンテナソフトウェア。アプリ本体と動作に必要なライブラリ・データをパッケージ化できます。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Linux

Linuxは、Unixをベースにして開発されたオペレーティングシステムです。日本では「リナックス」と呼ばれています。 主にWebサーバやDNSサーバ、イントラネットなどのサーバ用OSとして利用されています。 上位500のスーパーコンピュータの90%以上はLinuxを使用しています。 携帯端末用のプラットフォームAndroidは、Linuxカーネル上に構築されています。

0グッド

0クリップ

投稿2023/11/12 08:41

実現したいこと

  • singularityモジュールを追加したい
  • そもそも手順が有っているのか確認したい

前提

OSはRHEL7です。
githubよりsingularity3.11.5をダウンロード・解凍した後にmconfigを実行しようとしたところ、
エラーが発生しました。
github:https://github.com/sylabs/singularity/releases/tag/v3.11.5
元のパッケージ:https://github.com/sylabs/singularity/releases/download/v3.11.5/singularity-ce-3.11.5-1.el7.x86_64.rpm

検索してみた限りでは、ダウンロード→解凍→アーカイブ内のmconfig を実行→make コマンドを実行という認識なのですが、
或いはそもそもの手順が間違っているのでしょうか。

発生している問題・エラーメッセージ

go compiler(の最新版)が見つからないとエラーが発生するのですが、
go は最新版がインストールされているように見えます。

[root@hoge singularity-ce-3.11.5]# ./mconfig --prefix=/opt/fuga/singularity/3.11.5 Configuring for project `singularity-ce' 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.17)... not found! mconfig: could not complete configuration [root@hoge singularity-ce-3.11.5]# go version go version go1.17.12 linux/amd64 [root@hoge singularity-ce-3.11.5]#

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

melian

2023/11/12 09:14 編集

mtconfig の内容を見ると、以下のシェルスクリプトを実行しています。 singularity-3.11.5/mlocal/checks/basechecks.chk そして、Go のバージョンの確認は以下の行なので、 if env GO111MODULE=off $go run $makeit_checksdir/version.go go$hstgo_version >/dev/null 2>&1; then コマンドラインで以下を実行してみれば何か判るかもしれません。 env GO111MODULE=off go run singularity-3.11.5/mlocal/checks/version.go go1.17
3booking

2023/11/15 07:21

ありがとうございます。 教えて下さったコマンドを実行したところ、一部のファイルで拒否されてしまいました。 [root@hoge singularity-ce-3.11.5]# env GO111MODULE=off go run /home/shared/ssw_inspector/20231101_singularity-3.11.5_install/src/singularity-ce-3.11.5/mlocal/checks/version.go fork/exec /tmp/go-build2302471291/b001/exe/version: permission denied [root@hoge singularity-ce-3.11.5]#
melian

2023/11/15 07:35

おそらく、セキュリティ関連の制約で /tmp ディレクトリ以下に置かれている実行形式ファイルの実行が禁止されている模様です。なので、一時ファイルの保存ディレクトリを変更してみるとよいかもしれません。具体的には環境変数 GOTMPDIR を /tmp 以外に指定します。例えば /home/shared/ssw_inspector/20231101_singularity-3.11.5_install/ を指定します。 export GOTMPDIR=/home/shared/ssw_inspector/20231101_singularity-3.11.5_install/ そして、env GO111MODULE=off go run ... を実行してみて下さい。
3booking

2023/11/15 08:24

ありがとうございます。 リリースタグgo1.17と返ってきました。 [root@hoge singularity-ce-3.11.5]# env GO111MODULE=off go run mlocal/checks/version.go go1.17 Found Go release tag go1.17. また、そのままmconfigを再度試してみましたが以下のようになりました。 [root@hoge singularity-ce-3.11.5]# ./mconfig --prefix=/opt/fuga/singularity/3.11.5 Configuring for project `singularity-ce' 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.17)... /bin/go checking: host C compiler option -Wall... yes checking: host C compiler option -Werror... yes checking: host C compiler option -Wfatal-errors... yes checking: host C compiler option -Wno-unknown-warning-option... yes checking: host C compiler option -Wstrict-prototypes... yes checking: host C compiler option -Wpointer-arith... yes checking: host C compiler option -Wbad-function-cast... yes checking: host C compiler option -Woverlength-strings... yes checking: host C compiler option -Wframe-larger-than=2047... yes checking: host C compiler option -Wno-sign-compare... yes checking: host C compiler option -Wclobbered... yes checking: host C compiler option -Wempty-body... yes checking: host C compiler option -Wmissing-parameter-type... yes checking: host C compiler option -Wtype-limits... yes checking: host C compiler option -Wunused-parameter... yes checking: host C compiler option -Wunused-but-set-parameter... yes checking: host C compiler option -Wno-discarded-qualifiers... yes checking: host C compiler option -Wno-incompatible-pointer-types... yes checking: host C compiler option -pipe... yes checking: host C compiler option -fmessage-length=0... yes checking: host C compiler option -fPIC... yes checking: host `ar' path... ar checking: host `ld' path... ld checking: host `ranlib' path... ranlib checking: host `objcopy' path... objcopy checking: target C compiler... cc checking: target C++ compiler... c++ checking: target `ar' path... ar checking: target `ld' path... ld checking: target `ranlib' path... ranlib checking: target `objcopy' path... objcopy checking: host compiles static binaries... no checking: target compiles static binaries... no checking: host os type... unix checking: host architecture... x86_64 checking: target architecture... x86_64 checking: host architecture word size... 64 checking: target architecture word size... 64 checking: project version... 3.11.5 checking: project short version... 3.11.5 => running post-basechecks project specific checks ... checking: namespace: CLONE_NEWPID... yes checking: namespace: CLONE_FS... yes checking: namespace: CLONE_NEWNS... yes checking: namespace: CLONE_NEWUSER... yes checking: namespace: CLONE_NEWIPC... yes checking: namespace: CLONE_NEWNET... yes checking: namespace: CLONE_NEWUTS... yes checking: namespace: CLONE_NEWCGROUP... no checking: feature: NO_NEW_PRIVS... yes checking: feature: MS_SLAVE... yes checking: feature: MS_REC... yes checking: feature: MS_PRIVATE... yes checking: user capabilities... yes checking: header linux/securebits.h... yes checking: header linux/capability.h... yes checking: libseccomp+headers... no seccomp headers are required to build Singularity with seccomp support. To disable seccomp support run mconfig using '--without-seccomp'.
melian

2023/11/15 08:36

手元に RHEL7 環境がありませんので推測になりますが、libseccomp パッケージと libseccomp-devel パッケージをインストールする必要があるのだと思います。
3booking

2023/11/16 08:34 編集

ありがとうございました。 libseccompパッケージは既に入っていましたが、libseccomp-develパッケージが見つかりませんので調べてみます。 [root@hoge ~]# rpm -qa|grep seccom libseccomp-2.3.1-4.el7.x86_64 [root@hoge ~]# yum search libseccomp-devel Loaded plugins: langpacks, product-id, search-disabled-repos, subscription-manager Warning: No matches found for: libseccomp-devel No matches found [root@hoge ~]#
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.47%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問