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

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

新規登録して質問してみよう
ただいま回答率
85.50%
make

make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。

FORTRAN

FORTRAN(フォートラン)は科学時術計算に向いた手続き型プログラミング言語です。 並列計算の最適化が行いやすい特性上、数値予報および気候モデルなどの大規模な計算を行う分野のスーパーコンピュータで使われています。

GitLab

GitLabは Gitoliteをブラウザから管理できるようにする Rubyアプリケーションで、 GitHubのようなサービスをクローズドな環境に独自で構築できるように 公開されたものです。

Q&A

解決済

1回答

973閲覧

makeによる環境構築エラー

jjjttt

総合スコア3

make

make は、ビルド作業を自動化するツールです。さまざまなファイルの最終変更時刻を比較し、従属するファイルよりも「ターゲット」のファイルが古いことがわかったときユーザーが設定していた命令を実行する事が可能です。

FORTRAN

FORTRAN(フォートラン)は科学時術計算に向いた手続き型プログラミング言語です。 並列計算の最適化が行いやすい特性上、数値予報および気候モデルなどの大規模な計算を行う分野のスーパーコンピュータで使われています。

GitLab

GitLabは Gitoliteをブラウザから管理できるようにする Rubyアプリケーションで、 GitHubのようなサービスをクローズドな環境に独自で構築できるように 公開されたものです。

0グッド

0クリップ

投稿2021/11/18 10:56

前提・実現したいこと

Gitlabのプログラミングをクローンしてインストールしようとしています。
makeでエラーが発生します。プログラミングは全くわからないので
意味の通らない文章をかいているかもしれませんが、
もしよろしければご教授ください。
GDMAプログラムをインストールしたいです。

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

j_tsu@LAPTOP-J18BRM50 ~/gdma
$ make
cd src; "C:/Program Files/GnuWin32/bin/make" FFLAGS="-O2 " FC=gfortran
make[1]: ディレクトリ C:/cygwin64/home/j_tsu/gdma/src' に入ります ./version.py ../VERSION version.f90 gfortran Python make[1]: *** [version.mod] エラー 9009 make[1]: ディレクトリ C:/cygwin64/home/j_tsu/gdma/src' から出ます
make: *** [gdma] エラー 2

該当のソースコード

gfortran

1 2gdma: gdma.o dma.o atom_grids.o input.o timing.o version.o 3 ${FC} ${FFLAGS} $^ -o gdma 4 5%.o: %.f90 ${FRC} 6 ${FC} ${FFLAGS} -c $< 7 8%.o: %.F90 ${FRC} 9 ${FC} ${FFLAGS} -c $< 10 11gdma.o: dma.o atom_grids.o input.o timing.o version.mod 12dma.o: atom_grids.o input.o 13 14version.mod: force 15 ./version.py ../VERSION version.f90 ${FC} 16 $(FC) -c ./version.f90 17 18force: 19

試したこと

pythonのコードを打ってみましたがよくわかりませんでした。modファイルが作成されて
いないということなのでしょうか?

補足情報(FW/ツールのバージョンなど)

python3をいれております。
srcにはversion.pyというデータがはいっております。
コードは下記のようになっております。

#!/usr/bin/python3 # -*- coding: utf-8 -*- """Construct the version.f90 file that contains version details. """ import argparse import re from datetime import datetime # import os # import string import subprocess this = __file__ parser = argparse.ArgumentParser( formatter_class=argparse.RawDescriptionHelpFormatter, description="""Construct the version.f90 file that contains version details. """,epilog=""" {} args """.format(this)) parser.add_argument("vfile", help="VERSION file path") parser.add_argument("v90", help="version.f90 file path") parser.add_argument("compiler", help="Compiler") args = parser.parse_args() with open(args.vfile) as IN: line = IN.readline().strip() version = re.sub(r"VERSION +:= +", "", line) line = IN.readline().strip() patchlevel = re.sub("PATCHLEVEL +:= +", "", line) now = datetime.today().strftime('%d %B %Y at %H:%M:%S') log = subprocess.check_output("git log -n 1 --oneline", shell=True, universal_newlines=True) commit = log.split()[0] with open(args.v90,"w") as OUT: OUT.write(f"""MODULE version ! version.f90 is generated automatically by version.py ! GDMA version and build date CHARACTER(*), PARAMETER :: gdma_version = "{version}.{patchlevel}" """) OUT.write(f'CHARACTER(*), PARAMETER :: commit="{commit}"\n') OUT.write(f'CHARACTER(*), PARAMETER :: compiler="{args.compiler}"\n') OUT.write(f'CHARACTER(*), PARAMETER :: compiled="{now}"\n') OUT.write('\nEND MODULE version\n')

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

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

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

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

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

jbpb0

2021/11/18 11:43 編集

「C:/cygwin64/home/j_tsu/gdma」に「VERSION」という名前のファイルはありますか? あるなら、makeを実行するのではなく、下記を実行したらどうなりますか? cd C:/cygwin64/home/j_tsu/gdma/src python3 version.py ../VERSION version.f90 gfortran
jjjttt

2021/11/18 12:19

たびたびありがとうございます。VERSIONはあったのですが 実行してみたところ下記のとおりとなりました。 j_tsu@LAPTOP-J18BRM50 ~ $ cd C:/cygwin64/home/j_tsu/gdma/src python3 version.py ../VERSION version.f90 gfortran -bash: /cygdrive/c/Users/j_tsu/AppData/Local/Microsoft/WindowsApps/python3: Permission denied
jbpb0

2021/11/18 13:00 編集

> python3: Permission denied あれ? > python3をいれております。 は、ちゃんと使えてます?
jjjttt

2021/11/18 22:01

pythonと打つと下記のようにでることから 入っていると思っていたのですが、違うのでしょうか? j_tsu@LAPTOP-J18BRM50 ~ $ python Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 08:06:12) [MSC v.1900 64 bit (AM D64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>>
jbpb0

2021/11/18 22:43

コマンド名は「python3」ではないのですね それなら、下記を実行してみてください cd C:/cygwin64/home/j_tsu/gdma/src python version.py ../VERSION version.f90 gfortran
jjjttt

2021/11/19 08:08

無事実行できました。1か月近く格闘していたのですが全く意味が分からない状態でした。お陰様でようやくできました。大変助かりましたありがとうございました。また、ベストアンサー等つけさせていただきたいので、大変お手数なのですが回答にご記入いただいてもよろしいでしょうか?よろしくお願いいたします。
guest

回答1

0

ベストアンサー

makeを実行するのではなく、下記を実行してみてください

cmd

1cd C:/cygwin64/home/j_tsu/gdma/src 2python version.py ../VERSION version.f90 gfortran

 
.
または、下記のように変更して、makeを実行してみてください

makefile

1 ./version.py ../VERSION version.f90 ${FC}

↓ 変更

makefile

1 python version.py ../VERSION version.f90 ${FC}

投稿2021/11/20 01:32

編集2021/11/20 01:46
jbpb0

総合スコア7651

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

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

jjjttt

2021/11/20 03:07

的確なご回答ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問