MSYS2/MinGW64環境でのruby-opencv

OpenCVをRubyより使いたく色々探していると,「ruby-opencv」というGemがあることを発見しました.

ruby-opencv/ruby-opencv · GitHub
https://github.com/ruby-opencv/ruby-opencv

ここにも書かれている通り,Mac環境であれば,HomebrewかMacPortであらかじめOpenCVのバイナリパッケージをインストールしておいて,gemコマンドで直接インストールする場合は,仮にOpenCVのライブラリの場所が/opt/opencv/lib,インクルードファイルの場所が/opt/opencv/include だったとすると,

$ gem install ruby-opencv -- --with-opencv-dir=/opt/opencv

で,Bundlerでbundle installする場合は,

$ bundle config build.ruby-opencv --with-opencv-dir=/opt/opencv
$ bundle install

のようにすればすぐに利用可能です.MacやLinux(X Window)環境だと何の問題もありません.

Window環境であれば,Windows用のOpenCVのバイナリパッケージ(数百MBもある)を取ってきて,PATHを設定し,すでにVisual Studio(Visual C/C++)の環境があれば,gem install するだけで使える(らしい,試してないので分からないけど...)

では,Windows環境で,Visual Studio等がなくVCのコンパイラ(CL.EXE)が利用できない場合どうするか.

ということで,手前のMSYS2/MinGW64 の環境下でruby-opencvが利用できるかどうかTRYしてみました.

Continue reading “MSYS2/MinGW64環境でのruby-opencv”

W32TeX on Windows 8.1

前回(MSYS2+VagrantによるWindowsでのUNIX環境),Windows 8.1 上にて MSYS2 環境を構築しましたので,今回はその上でTeXを動かしたいと思います.

WindowsでTeXといえば,TeX Liveか,TeXインストーラ3ということになるかと思います.

TeXインストーラ3
http://www.math.sci.hokudai.ac.jp/~abenori/soft/abtexinst.html

一般の人にはこれでいいかと思いますが,MSYS2のminttyとEmacs(YaTeX)の環境で,かつできるだけサイズを小さく環境構築したいので,以下の方法を採りました.忘れそうなので,ほぼ自分のために備忘録しておきます.一般の人には参考にならないかも...

まずは,TeXをインストールするフォルダを作成します.私は「C:¥Applications¥W32TeX」としました.後述する「DVIOUT」のためにも,本当はフォルダの名前の文字数は8文字以内がいいのですが...

Continue reading “W32TeX on Windows 8.1”

MSYS2+VagrantによるWindowsでのUNIX環境

0. 目次

1. はじめに
2. Vagrantについて
3. WindowsにおけるVagrantの利用について
4. PuTTYを使う方法
5. Vagrant付属のMSYS環境を利用する
5.1. Vagrant付属のMSYS環境下でmingw-getを使えるようにする
5.2. Vagrantによる仮想マシンの構築と接続の実際
5.3. MSYSのsshで接続できない時の回避策
5.4. 結局この方法はおすすめできない
6. MSYS2環境を利用する
6.1. MSYS2とは
6.2. MSYS2のダウンロードとインストール
6.3. シェルの環境設定
6.4. フォントの設定
6.5. 必要なパッケージのインストール
6.6. Vimの設定
7. 再度Vagrant
8. 仮想マシンLinuxの日本語化
9. ネットワーク設定
10. ファイル共有機能

1. はじめに

仕事上,UNIX(GNU)関係ツールをよく使うのです.
Git, Vim, gcc, make, Bash, OpenSSH, Emacs, grep, MySQL, Gnuplot, etc..
でも,メインのマシンをLinuxにするほどの勇気はありません.ですので,現在は主にMac (OS X)を使ってます.
「OS X」はBSD UNIXベースのOSのDarwin (http://en.wikipedia.org/wiki/Darwin_(operating_system) )です.

しかし,コンパイラはLLVM-GCC(llvm-gcc)か,Apple LLVM Compiler(clang)
Rubyも古いし,ApacheやPHPも同梱されているけど拡張しづらいし.
結局,独自のUNIXパッケージ管理を使わざるを得ません.

  • MacPorts
    • 全て「/opt/local」上のライブラリで完結し,Macのシステムに依存しない.
    • Gitだけをインストールするのに,約40個もの依存パッケージ(ncurses, openssl, perl等)をインストールしなければならない
  • Homebrew
    • 「/usr/local」配下をユーザに読み書きパーミッションを与えて利用.sudoしなくてよい.
    • 必要なプログラムだけをインストールするので無駄がない.
    • ビルドに,システムの古いライブラリを利用したり,Homebrew内のライブラリを利用したりで混在してしまう.

そう考えると,ぼちぼちWindowsがメインでも良いかもという気がしてきました.自分が感じるMacの不満は...

  • MS OfficeもWindow版とMac版では,やっぱり若干違う.
  • MacBook Airでも結構重い(1kg超)
  • アルミボディなのでちょっとぶつけたらすぐ変形する.
  • D-sub15ピン(VGA)コネクタや,RJ-45(LAN)用コネクタなど利用するのに色々インターフェースが必要.
  • OS Xのアップグレードのペースについていけない…
  • OS Xのアップグレードの度に,Homebrewがなんかおかしくなる
  • Xcodeがでかい.

でも,カッコいいし,フォントレンダリングも奇麗だし,何よりもベースはUNIXというのが良いのです.しかし,Windowsでも,UNIX環境を使おうと思えば使えるんですよね.

  • Cygwin
    • Windowsで,完全なUNIX環境を提供
    • 色々なUNIXアプリケーションが移植されている
    • 独自ライブラリ(cygwin1.dll)を利用
  • MSYS(MinGW)
    • GCC及び必要なツールのみの提供
    • Microsoftのランタイムライブラリ(msvcrt.dll)を利用

結局...

MacやWindows上で,ネイティブにWeb開発環境を入れても維持管理が困難
案件によって,バージョン等開発環境が異なるのは当たり前
結局,なんだかんだでLinuxの方が良いでしょう

ならば,Windows上でLinuxを利用すればよい.

そこで,VirtualBoxとVagrantの登場です.
なんだ,結局仮想化じゃないか...」と声が聞こえてきそう.

今回は,WindowsでVagrantを利用する最適な方法の1つを説明します.

Continue reading “MSYS2+VagrantによるWindowsでのUNIX環境”

Windows 8.1にCygwin64環境を構築

前置き

普段はMac使いなので,gccやらvimやらはターミナルでの使用で事足りていますが,講義ではWindows 7上でのCygwin(32bit)環境で行っていますので,文字コードやら改行コード,その他もろもろ予期せぬ違いなどあったりするので,今回,iMacのParallels Desktop 10上の仮想マシン(Windows 8.1)環境に,Cygwin環境を導入しました.

Cygwinなんて久しぶりに触ります.かつてはThinkPadにてWindows 2000を入れて,そこでCygwin環境を構築し,研究のための画像処理プログラムやら作成していましたが,その後Windows 2000も使用に耐えなくなってきてVine Linuxに入れ替えてからCygwinなんてものはてんでご縁の無かったものですから,それから考えるともう7〜8年触っていないのかもしれません.

CygwinでX環境まで入れて遊んだ時期もありましたが,今や仮想環境が無料で手に入るようになりましたので,仮想マシンにLinuxを入れれば済むことで事足ります.ですのでわざわざCygwin環境を入れる必要はこれまで無かったのですが,実習室の環境がそうなっている以上,講義資料を作成したり,提供するソースプログラムがきちんとビルドできたりできるか確認するために,手元に同環境を置いておきたいのです.

ということで前置きが長くなってしまいましたが,ちょっと一筋縄ではいかなかったので,備忘録としてここに記載しておくことにしました.ご参考まで.

Cygwin64のインストール

せっかくなので,Cygwinも64bit環境を…,ということで,次のURLから「setup-x86_64.exe」をダウンロードしてきます.

https://www.cygwin.com/

Continue reading “Windows 8.1にCygwin64環境を構築”