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

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

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

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

MSYS

MSYS(Minimal SYStem)は、Windows上で動くUnixシェル、テキスト操作ユーティリティなどをまとめたパッケージ。C言語やFortranのコンパイラであるMinGWをカバーする目的で作られています。

GCC

GCCはGNU Compiler Collectionの略です。LinuxのC言語コンパイラのデファクトスタンダードであり、数多くの他言語やプラットフォームサポートもします。

COBOL

COBOL(COmmon Business Oriented Langage)は、実務処理用に開発されたプログラミング言語です。

Q&A

解決済

1回答

3535閲覧

Win10でGNUcobolをインストールしたい

hyogo

総合スコア23

bash

bash(Bourne-again-Shell)は sh(Bourne Shell)のインプリメンテーションに様々な機能が追加されたシェルです。LinuxやMac OS XではBashはデフォルトで導入されています。

MSYS

MSYS(Minimal SYStem)は、Windows上で動くUnixシェル、テキスト操作ユーティリティなどをまとめたパッケージ。C言語やFortranのコンパイラであるMinGWをカバーする目的で作られています。

GCC

GCCはGNU Compiler Collectionの略です。LinuxのC言語コンパイラのデファクトスタンダードであり、数多くの他言語やプラットフォームサポートもします。

COBOL

COBOL(COmmon Business Oriented Langage)は、実務処理用に開発されたプログラミング言語です。

0グッド

0クリップ

投稿2017/07/30 06:14

###前提

Cobolを初めて使うことになりました。

Win10でコンパイルする必要があるのですが、実行環境が作れずに困っています。blog.netandfield.comさんのサイトを見てトライしています。コマンドやシェルなどの知識が浅いためコマンドの意味を調べながら進めているのですが、test.cblをコンパイルできるまでに至っていません。

皆様のお知恵を貸していただきたくよろしくお願いいたします。
出てくる内容としてCobol,bach,MSYS,GCCのタグをつけさせていただきました。

###実現したいこと
Windows10にGNUcobolをインストールして実行ファイルを作りたい。

###試したこと
0. 前編
http://blog.netandfield.com/shar/2016/01/mingw-gunucobolopencobol.html
0. 後編
http://blog.netandfield.com/shar/2016/01/mingw-gunucobolopencobol-1.html
0. 完結編
http://blog.netandfield.com/shar/2016/01/mingw-gunucobolopencobol-2.html

主にこのサイトを見ながら進めているのですが、あまり触ったことがないコマンドとシステム環境変数の設定が出てきて何が間違いなのか確認するところで止まっています。

###知識レベル的に初めてわかったこと、理解はできてません
・コマンドプロンプトとPowerShellとMSYSはシェルスクリプトという
・システム環境変数を作るとカレントディレクトリに関係なくコマンドが実行できる

###わからなかったこと
(間違っていたらご指摘いただきたいです。)
・cobc -vやcobc -xをちゃんと表示したい
・test.cobファイルはどこに置いたら良いのでしょうか
・後編に出てくるMicrosoft Visual Studioは必要でしょうか?

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

c:\MinGW\msys\1.0\msys.bat で

$ cobc -v を打つと C:\GNU Cobol 2.0\config\default.conf:No such file or directory

と出力されます。
Cドライブ直下を見てもGNU Cobol 2.0のようなフォルダがありません。
C:\MinGW\config\default.conf
にはコンフィグファイルがあり、これのことを言ってるのでしょうか。

そこで、c:\MinGWをc:\GNU Cobol 2.0と名前変更してみると、今度はmsys.batが動かなくなったのでフォルダ名を変えるとかではないようだと考えました。

$ cobc --version を打つと cobc (GNU Cobol) 2.0.20151025 Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Keisuke Nishida Copyright (C) 2006-2012 Roger While Copyright (C) 2009,2010,2012,2014,2015 Simon Sobisch This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Built Oct 26 2015 01:15:57 Packaged Oct 25 2015 21:40:28 UTC C version (Microsoft) 1700

と出てきます。
--version、--help、--infoのオプションはちゃんと表示されました。

次の段階で、

$ export COB_CONFIG_DIR=C:\MinGW\config

と打ってCOB_CONFIG_DIRを書き換える?ようなんですが、

$ cobc --info で確認してみると、 cobc (GNU Cobol) 2.0.20151025 Copyright (C) 2001,2002,2003,2004,2005,2006,2007 Keisuke Nishida Copyright (C) 2006-2012 Roger While Copyright (C) 2009,2010,2012,2014,2015 Simon Sobisch This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Built Oct 26 2015 01:15:57 Packaged Oct 25 2015 21:40:28 UTC C version (Microsoft) 1700 Build information Build environment : i686-pc-windows CC : cl CPPFLAGS : CFLAGS : /Zi /nologo /W4 /WX- /O2 /Ob2 /Oi /Ot /Oy- /GL /Gm- /EHsc /MD /GS /fp:precise /Zc:wchar_t /Zc:forScope /Gd /analyze- LD : link.exe LDFLAGS : GNU Cobol information COB_CC : cl COB_CFLAGS : -I "C:\GNU Cobol 2.0\include" COB_LDFLAGS : /LIBPATH:"C:\GNU Cobol 2.0\libs" COB_LIBS : libcob.lib COB_CONFIG_DIR : C:\GNU Cobol 2.0\config env: COB_CONFIG_DIR : C:MinGWconfig COB_COPY_DIR : C:\GNU Cobol 2.0\copy COB_MSG_FORMAT : MSC COB_MODULE_EXT : dll COB_EXEEXT : .exe 64bit-mode : no BINARY-C-LONG : 4 bytes Extended screen I/O : pdcurses Variable format : 0 Sequential handler : Internal ISAM handler : VBISAM

中段にあるCOB_CONFIG_DIRの内容でenvの\マーク消えてしまっています。

COB_CONFIG_DIR : C:\GNU Cobol 2.0\config env: COB_CONFIG_DIR : C:MinGWconfig
$ export COB_CONFIG_DIR=/C/MinGW/config

としてから

$ cobc --info と打って確認すると ~~上と同じなので省略~~ COB_CONFIG_DIR : C:\GNU Cobol 2.0\config env: COB_CONFIG_DIR : c:/MinGW/config COB_COPY_DIR : C:\GNU Cobol 2.0\copy COB_MSG_FORMAT : MSC COB_MODULE_EXT : dll COB_EXEEXT : .exe 64bit-mode : no BINARY-C-LONG : 4 bytes Extended screen I/O : pdcurses Variable format : 0 Sequential handler : Internal ISAM handler : VBISAM

COB_CONFIG_DIRがenv(書き換え?)ができたようですが、\になってないのはおかしいのでしょうか。

COB_CONFIG_DIR : C:\GNU Cobol 2.0\config env: COB_CONFIG_DIR : c:/MinGW/config

\が合ってるのかわからないままですが次の段階へ

$ cobc -v cobc: Error: No input files

COB_CONFIG_DIRを触る前は

$ cobc -v を打つと C:\GNU Cobol 2.0\config\default.conf:No such file or directory

となっていたので少し進んでくれたのでしょうか。
しかし、blog.netandfield.comの前編では

$ cobc -v Loading standard configuration file 'default.conf' cobc: Error: No input files

こうなってて、1行目の結果が違うみたいです。

$ export COB_CONFIG_DIR=/c/usr/local/MinGW/config

して、ついでに同じ記述を .bashcr にも書いとく。

というbachとやらの部分が意味わからず進もうと思うのですが、

まぁ「.bashrc」って単語が出てきたら「bash起動時に読み込まれる設定ファイルなんだな~」と、お考えください。 http://wa3.i-3-i.info/word13649.html

と書いているサイトからこの部分には関係ないと判断しました。
サイトの後編に進むと、
test.cobを作って

cobc -x

してみるとこに入りました。

$ cobc -x -free test.cob cobc: test.cob: No such file or directory

となりました。
後編サイトでは↓こうなっています。

$ cobc -x -free test1.cob 'cl' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。

またエラーの内容が違うので困りました。
あともう少しなようで、途方にくれています。

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

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

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

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

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

guest

回答1

0

ベストアンサー

OpenCobol と MinGW/MSYS どちらもマイナーなので、それらのコンボだと、
この先も正直イバラの道しか見えません。

GNU 関連のツールはもともと UNIN/Linux 用に作られていて、それを一部の
有志ががんばって Windows に移植したものがほとんどで、その分情報が少ないです。
大半の情報が UNIN/Linux 前提なので、それらを脳内で逐次 Windows 環境に
読み替えながら作業する必要があります( / と \ の違いとか改行コード
とか文字コードとか)。ちょっと質問しても、二言目には『Windowsは使って
いないのでわからないんですが』みたいな。

私は職場でも自宅でも Windows10 を使っていますが、開発環境は Windows
に Vagrant + VirtualBox を入れて、その中に CentOS(Linuxのひとつ)
を入れて開発しています。VM なので、必要に応じて 10 個以上の Linux
環境を作り、適宜切り替えながら使っています。

急がば回れで、これらのキーワードを調べてみて、ベースとなる Linux を
マスターしないと後々ツライと思います。どうしても Windows でやらないと
いけない事情がある(本番も Windows + OpenCobol で動いているとか)が
ある場合は別ですが…。

投稿2017/07/30 14:06

hotta

総合スコア1613

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

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

hyogo

2017/07/30 14:28

hotta様 貴重なご意見ありがとうございます。 おそらくWindows + OpenCobolでないといけない事情はないと思います。 Vagrant + VirtualBoxの言葉はよく目にしていました。ドットインストールのサイトのCobol入門動画にもその方法でコンパイル環境を構築されていて気になっておりました。使ったことがないのでこれを期にトライしてみたいと思います。 これで一度質問を終わり、進展できましたら書かせていただきます。またよろしくお願いいたします。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問