Cobolの仕事をするようになったけど、COBOLにはIDE(統合開発環境)がなく自宅で練習もできないので、困ってしまって模索の結果やっとたどり着けそうなので備忘録です!
システム要件
Winwos10で、GNUCOBLのデバッグ機能を使うには以下のシステム要件が必要です。
WSL2の前提条件を確認する
1.x64 システムの場合: バージョン 1903 以降 (ビルド 18362.1049 以降)。
2.ARM64 システムの場合: バージョン 2004 以降 (ビルド 19041 以降)。
参考サイト
https://learn.microsoft.com/ja-jp/windows/wsl/install-manual
Dockerの前提条件を確認する
・Windows 10 Pro/Enterprise 上の Docker Desktop 2.0 以降。
・Windows 10 Home (2004 以降) は、Docker Desktop 2.2 以降と WSL2 バックエンドが必要です。
参考サイト
Windows Home に Docker Desktop をインストール
Linuxインストール前の準備
WSL2の機能を使って、Windows上でLinuxをの実行環境を作ります。
・Windowsの「スタートボタン」→「Windows システム ツール」→「コントロールパネル」→「プログラム」→「Windowsの機能の有効化または無効化」と進み以下のように仮想マシンの機能を有効にした後画面の指示に従って再起動します。
WSL2用Linuxカーネルのインストール
1.ブラウザで「https://aka.ms/wsl2kernel」にアクセスして「x64マシン用WSL2 Linuxカーネル更新プログラムパッケージ」をクリックしてダウンロードします。
2.ダウンロードした更新プログラム「 wsl_update_x64.msi」をダブルクリックするとインストラーが起動するので「Next」→「Finish」と進むとインストールは終わります。
WSL 2 を既定のバージョンとして設定する
PowerShellから以下のコマンドを実行します。
wsl --set-default-version 2
Linux ディストリビューションをインストールする
1.Windowsの「スタートボタン」→「Microsoft Store」と進みMicrosoft Storeを表示します。
2.「Microsoft Store」の検索窓に「ubuntu」と入力し「インストール」をクリックするとブラウザ上でインストールが開始されます。
3.インストールが終わりましたら「開く」をクリックするとubuntuの画面が表示されます。
4.ubuntuにユーザー情報の登録をします。
・「Enter new UNIX username」→ 新しく設定するユーザー名を入力します
・「New password」 → パスワードを入力します
・「Retype new password」 → 同じパスワードをもう一度入力します
※入力したpasswordは画面に表示されませんので入力したら「エンター」キーを押します。
以下のように表示されていればOKなので「exit」と入力しエンターを押すとubuntuの画面は閉じます。
・Installation successful!
・Welcome to Ubuntu 22.04.2 LTS (GNU/Linux 5.10.102.1-microsoft-standard-WSL2 x86_64)
これで、wsl2が使用できるようになりました。
さて、ここからが本題です!!
GNUCOBOLの設定とインストール準備
インストールされる方は「chocoコマンドでGnuCobolをインストール」から参考にしてください!
2023/8/20追記します。
次回の記事から参考にしてください。
GnuCobolのダウンロード
ブラウザでGnuCbolにアクセスして「Windows」をクリックします。
「gnucobol-3.2_win.7z」がダウンロードされますので、お好みの場所に解凍します。
私は、Cドライブ直下に「GnuCobol」というフォルダほ作り解凍。
※このパッケージにインストラーはありませんので、手動でインストールする必要があります。
configureの設定
ダウンロードしたファイルを参考に以下のように設定とインストールをします。
1.「configure」ファイル内
–exec-prefix=EPREFIXの[PREFIX]に絶対パスを指定する。
私はCドライブ直下の「GnuCobol」の中に解凍したので [PREFIX]に
C:\GnuCobol を指定し上書き保存
2.「./configure && make && make install」でインストール
参考サイト
configureオプションが知りたい〜バイナリのインストール先を知る〜
make installをwindosで実行
make installをwindowsに実行するにあたり以下のサイトを参考にさせていただきました。
ありがとうございました。
参考サイト
Windows10環境でmakeコマンドを使用する方法【ハマリ回避】
上記サイトを参考にするので、詳細な説明は割愛します。
1.Make for Windowsをダウンロード
ダウンロードされたファイル名→「make-3.81.exe」
2.インストール先をCドライブ直下に変更してインストール
3.make コマンドを実行できるように「パス」を通す
4.vacodeでMekefile Tools の拡張
GNUCOBOLのインストール
コマンドプロンプトとPowerShellからではコマンドが認識されないので「Git Bash」で実行
1.Git BashからGnuCobolのフォルダに移動
cd C:\GnuCobol
2.以下のコマンドでインストール
./configure && make && make install
以下のように「checking for gcc… no」とエラー表示されているので、Cのコンパイラを入れてみる
gccのインストール
1.以下のサイトから「x86_64-13.1.0-release-win32-seh-ucrt-rt_v11-rev1.7z」をダウンロードする
https://github.com/niXman/mingw-builds-binaries/releases
2.Cドライブ直下に「MinGW-w64」フォルダを作成し展開する
3.環境変数の設定「C:\MinGW-w64」にbinフォルダを配置したので「C:\MinGW-w64\bin」と設定
4.コマンドプロンプトを開き「gcc -v」と入力以下のように「bcc version13.1.0」と表示されているのでOKのはず・・
5.再度「./configure && make && make install
」をしてみましたが・・
結果は変わらずで、Cのコンパイラが認識されていないようです。
※ GUNCOBOLは、C言語のソースへ変換して、C言語のソースをGCC(GnuのCコンパイラ)でコンパイルし実行可能プログラムを生成していますので、必要だったのですが・・
再度別のキーワードで調べてみるとどうやら、Windowsもインストールコマンドがあることを知りました。
Linux(ubuntu)では「sudo apt-get install gnucobol」でインストールできたので、Windowsでもあるのでは?と探してみましたが当初は見つけることができませんでしたが、探すキーワードが変わったことでやっと見つけることができました!
長~い道のりでした!
参考サイト
https://stackoverflow.com/questions/45281932/installing-gnucobol-on-windows10
chocoコマンドでGnuCobolをインストール
PowerShellに管理者権限で入って以下のコマンドでインストールします。
choco install gnucobol
途中 Do you want to run the script?([Y]es/[A]ll – yes to all/[N]o/[P]rint): と表示されるので y エンター
ShimGen has successfully created a shim for cobcrun.exe と表示されているのでインストール完了です。
なんと・・アッ!という間に終わってしまいましたね!
これまでのまとめ
今回の記事の前に試したみたことを下表に残します。
1.結論からいうとVMwre(仮想環境内)にubuntuをインストールして更にDockerのインストールはやはり無理?
正確にはVMwer社もまだお試し段階のようでしたので、今回は諦めました。
VMware | WSL2 | |
---|---|---|
ubuntu | 〇 | 〇△ |
Docker | △ | 〇のはず |
2023/8/20追記します。
2.Windows環境でコンパイルする場合、makeファイルの変換エラーがでてデバックできなかったので、回避策を思案中!
3.wslを利用してubuntuのインストールは可能でしたが、WSLではsystemdがPID1で動いていないためこれらをカバーする回避策も必要。
次回はVScodeで拡張機能をインストールし設定もしていきます。
コメント