ekCraft's blogs

SE転向を目指すサンデープログラマーの備忘録

ローカル開発環境構築(COBOL編)

仕事の関係でCOBOLを学習する必要が出てきたため、せっかくなのでVagrantでopensource COBOLを動かせるローカル開発環境を構築してみました。 参考サイト様のほぼそのままですが(多謝)、とりあえずできたので備忘録も兼ねて記載しておきます。

■環境

■必要なソフトウェアのインストール

  1. Vagrant
    www.vagrantup.com

  2. VirtualBox
    Oracle VM VirtualBox - Downloads | Oracle Technology Network | Oracle

■ローカル開発環境(VM)の構築

今後仮想環境を複数作成する可能性を考慮して、仮想環境を括る”Vagrant”をCドライブ直下に作成し、その下に今回作成する仮想環境のディレクトリを作成

> mkdir C:\Vagrant\cbl_centos68

cdコマンドで移動

> cd C:\Vagrant\cbl_centos68

Vagrantfile の作成

C:\Vagrant\cbl_centos68>vagrant init bento/centos-6.8
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

Vagrantfileの編集
作成されたVagrantfileをエディタで開き、35行目、以下の部分のコメントアウトを外す

config.vm.network "private_network", ip: "192.168.33.10"

VMの起動

C:\Vagrant\cbl_centos68>vagrant up

VMSSH接続

C:\Vagrant\cbl_centos68>vagrant ssh

CentOSのアップデート

[vagrant@localhost ~]$ sudo yum update -y

opensource COBOLをインストール

opensource-cobol-1.4.0J-1.el6.x86_64.rpmを以下サイトからダウンロードして、先程作成したC:\Vagrant\cbl_centos68に格納しておく

www.osscons.jp

先程のrpmファイルがVagrantディレクトリに格納されているのを確認してlocalinstallを実行

[vagrant@localhost ~]$ cd /vagrant

[vagrant@localhost vagrant]$ ls
hello.cbl opensource-cobol-1.4.0J-1.el6.x86_64.rpm Vagrantfile
[vagrant@localhost vagrant]$ sudo yum localinstall opensource-cobol-1.4.0J-1.el6.x86_64.rpm

途中必要となるパッケージのインストールを求められるので承認

Install 6 Package(s)

Total size: 21 M
Total download size: 20 M
Installed size: 35 M
Is this ok [y/N]: y

以下メッセージが表示されれば成功

Installed:
opensource-cobol.x86_64 0:1.4.0J-1

Dependency Installed:
cpp.x86_64 0:4.4.7-23.el6 gcc.x86_64 0:4.4.7-23.el6 glibc-devel.x86_64 0:2.12-1.212.el6
glibc-headers.x86_64 0:2.12-1.212.el6 kernel-headers.x86_64 0:2.6.32-754.2.1.el6

Complete!

バージョン確認

[vagrant@localhost vagrant]$ cobc -version
opensource COBOL 1.4J
OSS Consortium's patched version of OpenCOBOL1.1(Feb.06 2009)
----
cobc (OpenCOBOL) 1.1.0
Copyright (C) 2001-2009 Keisuke Nishida / Roger While
Built May 07 2015 17:18:48
Packaged Feb 06 2009 10:30:55 CET

■必要な各ライブラリのインストール

gmp-develのインストール

[vagrant@localhost vagrant]$ sudo yum install gmp-devel

途中必要となるパッケージのインストールを求められるので承認

Install 1 Package(s)

Total download size: 171 k
Installed size: 337 k
Is this ok [y/N]: y

以下メッセージが表示されれば成功

Installed:
gmp-devel.x86_64 0:4.3.1-13.el6

Complete!

ncurses-develのインストール

[vagrant@localhost vagrant]$ sudo yum install ncurses-devel

途中必要となるパッケージのインストールを求められるので承認

Install 1 Package(s)

Total download size: 641 k
Installed size: 1.7 M
Is this ok [y/N]: y

以下メッセージが表示されれば成功

Installed:
ncurses-devel.x86_64 0:5.7-4.20090207.el6

Complete!

db4-develのインストール

[vagrant@localhost vagrant]$ sudo yum install db4-devel

途中必要となるパッケージのインストールを求められるので承認

Install 2 Package(s)

Total download size: 7.1 M
Installed size: 26 M
Is this ok [y/N]: y

以下メッセージが表示されれば成功

Installed:
db4-devel.x86_64 0:4.7.25-22.el6

Dependency Installed:
db4-cxx.x86_64 0:4.7.25-22.el6

Complete!

■hello.cblを作成してコンパイル~実行

適当にハローワールドを出力するCOBOLプログラム(hello.cbl)を作成して先程のVagrantフォルダに格納しておく

hello.cblコンパイル

[vagrant@localhost vagrant]$ cobc -x -std=cobol85 hello.cbl

正しくコンパイルされていればhelloファイルが出来上がる。

[vagrant@localhost vagrant]$ ls
hello hello.cbl opensource-cobol-1.4.0J-1.el6.x86_64.rpm Vagrantfile

ただしこのままでは実行できない。 /etc/ld.so.conf.dの中にlibcob.so.1の場所を記載したconfファイルを作成しておく必要がある。

libcob.so.1の場所を確認

[vagrant@localhost vagrant]$ sudo find / -name libcob.so.1
/usr/local/lib/libcob.so.1

viコマンドで先程確認した場所を記載したconfファイルを作成

[vagrant@localhost vagrant]$ sudo vi /etc/ld.so.conf.d/usr-local-lib.conf

catコマンドで作成したconfファイルの内容を確認

[vagrant@localhost vagrant]$ cat /etc/ld.so.conf.d/usr-local-lib.conf
/usr/local/lib

ldconfigコマンドで設定を反映させる

[vagrant@localhost vagrant]$ sudo ldconfig

lddコマンドで確認するとlibcob.so.1のパスが通っているのが確認できる

[vagrant@localhost vagrant]$ ldd ./hello
linux-vdso.so.1 => (0x00007ffccf0cf000)
libcob.so.1 => /usr/local/lib/libcob.so.1 (0x00007f5d531a1000)
libm.so.6 => /lib64/libm.so.6 (0x00007f5d52f1d000)
libgmp.so.3 => /usr/lib64/libgmp.so.3 (0x00007f5d52cc1000)
libncurses.so.5 => /lib64/libncurses.so.5 (0x00007f5d52a9f000)
libdb-4.7.so => /lib64/libdb-4.7.so (0x00007f5d5272a000)
libc.so.6 => /lib64/libc.so.6 (0x00007f5d52395000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f5d52191000)
libtinfo.so.5 => /lib64/libtinfo.so.5 (0x00007f5d51f70000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f5d51d52000)
/lib64/ld-linux-x86-64.so.2 (0x00007f5d533de000)

helloファイルを実行

[vagrant@localhost vagrant]$ ./hello
HELLO, WORLD!

■参考サイト

sutepulu.com

ローカル開発環境構築(MySQL編)+Workbench接続

社内研修用に手持ちのPC端末上に仮想のローカル開発環境(VM)を構築し、そこにMySQLをインストールして、Workbenchから接続する方法を模索していたので、備忘録+参照用に記載しておきます。

■環境

■必要なソフトウェアのインストール

  1. Vagrant www.vagrantup.com

  2. VirtualBox
    Oracle VM VirtualBox - Downloads | Oracle Technology Network | Oracle

  3. Workbench
    MySQL :: Download MySQL Workbench

WindowsMySQL Workbenchをインストールして実行するには、以下のライブラリがインストールされている必要があります。

ライブラリがインストールされていれば、ページ下部に進みOSを選択してDownloadをクリック
f:id:ekCraft:20180811144722p:plain

以下の画面が表示されれば、No thanks, just start my download.をクリック。ダウンロードされたインストーラの指示に従いインストールを行って下さい。 f:id:ekCraft:20180811151550p:plain

■ローカル開発環境(VM)の構築

今後仮想環境を複数作成する可能性を考慮して、仮想環境を括るディレクトVagrantをCドライブ直下に作成し、その下に今回作成する仮想環境のディレクトmysql_ubuntu1604を作成(名前はなんでもOK)

> mkdir C:\Vagrant\mysql_ubuntu1604

cdコマンドで移動

> cd C:\Vagrant\mysql_ubuntu1604

Vagrantfile の作成

> vagrant init bento/ubuntu-16.04

Vagrantfileの編集
作成されたVagrantfileをエディタで開き、35行目、以下の部分のコメントアウトを外す

config.vm.network "private_network", ip: "192.168.33.10"

VMの起動

> vagrant up

VMSSH接続

> vagrant ssh

Ubuntuの日本語化

$ sudo apt-get -y install language-pack-ja-base language-pack-ja ibus-mozc
$ localectl set-locale LANG=ja_JP.UTF-8 LANGUAGE="ja_JP:ja"
// パスワードを入力
$ source /etc/default/locale
$ echo $LANG
ja_JP.UTF-8

Ubuntuの諸々アップデート

sudo apt-get update && sudo apt-get -y upgrade && sudo apt-get -y dist-upgrade && sudo apt-get -y autoremove && sudo apt-get -y autoclean
sudo init 6
// 再起動

MySQLインストール

sudo apt-get install mysql-server
// rootのパスワード設定

■よく使うコマンド

MySQLバージョン確認

$ mysql --version
mysql  Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using  EditLine wrapper

MySQLにrootユーザでログイン

$ mysql -u root -p
// パスワードを入力

MySQLの状態確認

$ mysqladmin ping -u root -p
Enter password:
mysqld is alive

■Workbenchの設定

VagrantSSH接続中であればexitしておく
Workbenchを起動したらAdd Connectionsをクリックして以下画像のように設定 f:id:ekCraft:20180811145207p:plain

f:id:ekCraft:20180811145238p:plain

VM上のMySQLに接続できました。 f:id:ekCraft:20180811152507p:plain

■参考サイト

proengineer.internous.co.jp

※日本語化はかかる手間と得られる恩恵が見合わない気がするのでやりませんでした。

Animatron Studioを使ってみる

Animatron StudioというWebサービスを使って、短いアニメを作ってみました。
フリー素材しか使っていませんが、音楽や画像などの素材を自分で用意できればオリジナリティの高いものを自在に作れそうです。

 

15秒のアニメで製作時間は1時間くらい。もっと器用な方ならそんなにかからないかも。面白かったです。

 

興味がありましたら是非。

paiza.hatenablog.com

 

Free HTML5 Online Animation Maker, Banner Maker and Video Maker | Studio

 

追記:iPhoneで見ると音が出ないみたい。。

楽天カード入会セルフバックで成果報酬が15,500円になるキャンペーン中(※追記有り)

 


※2016/08/29現在、当記事にて紹介しているキャンペーンは終了しています。セルフバック成果報酬額や付与ポイント数については楽天カード及びA8.netホームページをご確認下さい。


 

A8.netを利用していて、楽天カード入会を検討されている方はいい機会かもしれません。

 

楽天カード入会のセルフバック成果報酬が、2016/8/28まで953円→15,500円になるキャンペーン中です。

f:id:ekCraft:20160827235457p:plain

 楽天カードEdy機能付き、年会費永年無料、審査も割と通りやすいとのことですので一枚あっても損はないのかな、と思います。しかも楽天カードの新規入会+利用で最大8,000円相当のポイントがもらえるキャンペーンも実施中のようで、こちらとセルフバックが併用できれば15,500円+8,000円=23,500円ものお得感があるということになりますが、はたして。。

 

※2016/08/29追記

現在、キャンペーンは終了しておりセルフバック成果報酬は953円、新規入会のポイント付与は5,000円相当に戻っています。ネットを見ると、同様のキャンペーンが7月にも行われていた模様。となると今後また同様のキャンペーンが行われる可能性もありますので、そのタイミングを狙ってセルフバックや新規入会をするというのも良いかもしれませんね。

yuu-afiri.com

楽天カードでポイントゲット
申込はこちらへ

なお、A8.netを利用していなくて楽天カード入会を検討中の方は上記のリンクから入会していただけると、私が泣いて喜びます。

 

 

A8.net

興味のある方は是非。

パッケージ版Windows10を別PCに移行する

パッケージ版Windows10を、最初にインストールしたPCから別のPCに移行して利用することはライセンス上問題ないのでしょうか?NEC LaVie PC-LL750LGにパッケージ版Windows10をインストールして利用していましたが、後々自作PCに移行して利用したいと考えていたため、気になっていました。

最初からPCにインストールされているOEM版は当然別PCにインストールして利用することはできませんし、例え何かゴニョゴニョしてできたとしても、それはMicrosoftの定めるライセンス規約上違反にあたるというのは理解できます。しかし、パッケージ版はOS単体で購入するわけですから、どのPCで動かしても問題はないはず、、という認識でした。ネット上でも同意見の記述が多かったのですが、知人に「ダメじゃね?」と言われたことがあって、どうにも確信が持てなかったため、Microsoftに電話して聞いてみました。結果は、

  • パッケージ版のWindows10であれば別のPCに移行することは問題ない。
  • 理由を問われることもないし、回数制限などもない。
  • 移行前PCからWindows10をアンインストールし、旧OS(私の場合はWindows Vista)をインストールした時点で別PCでライセンス認証が可能。

とのことでした。問題はなさそうですね。

ということで、ふらりと立ち寄ったリサイクルショップで、OSなしのデスクトップPCが安く売られていたため、衝動買いしてきました。

f:id:ekCraft:20160814183921j:plain

HP Compaq 6000 Pro Small Form Factar
型番:XW244PA#ABJ
CPU:Intel Core 2 Duo E7500プロセッサー (2.93GHz、3MB L2キャッシュ、1066MHz FSB)
メモリ:4GB PC3-10600 (DDR3 1333MHz) DIMM
ストレージ:HDD 250GB

おそらく業務用と思われますが・・・。以前の記事を読んで頂いている方には、またCore 2 Duoマシンなんか買ったのか!と言われてしまいそうですが笑、デスクトップ用ですので性能は上がっているはずです。これに現在利用しているNEC LaVieの中で動いているWindows10とSSDを移行します。ちなみにLaVieは本体を閉じてデスクトップ的な使い方(※下記記事参照)をしていますが、これで晴れて本物のデスクトップマシンになります。

ekcraft.hatenablog.com

 

手順


移行にあたり以下の手順にて作業を行いました。

  1. 移行前PC(NEC LaVie)から必要なデータを取り出す。OneDriveとUSBメモリを利用。
  2. NEC LaVieWindows Vistaリカバリ用ディスクを挿入して、再起動。
  3. Windows Vistaユーティリティが起動するので、SSDをフォーマット。
  4. 一旦電源を切って、SSDを取り出し、購入時のHDDに換装。
  5. NEC LaVieWindows Vistaをインストール。
  6. 5のインストールしている間に、HP Compaqに先ほどのSSDを設置。MacBook ProSSD換装した時に付属していた3.5インチマウンタが役に立ちました。HP Compaqは2台のHDDを載せられますが、とりあえず既設の250GB HDDに挿さっているSATAケーブルを流用しました。
  7. Windows Vistaのインストールが完了したら、HP CompaqにWindows10をクリーンインストール
  8. HP CompaqでWindows10のライセンス認証。電話認証が必要でした。
  9. USBメモリに逃がしていたデータを元に戻し、必要なアプリケーションをインストールしなおす。

これで今までと同じようにWindows PCが利用できるようになりました。Microsoftアカウントにログインしていれば設定なども引き継がれるので、画面上は怖いくらい元どおり。笑

ちなみにHP Compaqは某リサイクルショップで7,900円で購入しましたが、NEC LaVieと増設したメモリなどを売却したらトントンになりました。デスクトップマシンはノートPCに比べて高性能なだけでなく、拡張性も高いので、今後さらに用途の幅が広がりそうです。