- 追加された行はこの色です。
- 削除された行はこの色です。
cygwinとは、要はwindows環境でUNIXを使えるようにするものです(無料)。もう少し突っ込めば、GNUのツール群をWindowsに移植し、それを用いてソースをコンパイルし直せばサーバプログラムなどもWindowsで動くというココロです。インストールは[[本家:http://www.cygwin.com]]のページからsetup.exeというのを拾ってくれば、ネットワーク越しに色々設定してくれるのでラクです
*link [#b96b8798]
-[[Cygwin Information and Installation:http://www.cygwin.com/]] 公式
-[[cygwinで行こう:http://www.okisoft.co.jp/esc/cygwin.html]] UTF-8 cygwinなど、有用な情報が豊富
-[[ck - terminal emulator:http://www.geocities.jp/cygwin_ck/]] 便利な端末
-[[cygwinを使う:http://www.mars.dti.ne.jp/~sohda/cygwin/]]
-[[Compile ! (^.^)v:http://www.netlaputa.ne.jp/~kose/Software/compile/index.html]] ちょっと古め
**NYAOS [#eb5c40bf]
*アンインストール [#gfa07f00]
-[[Cygwin のアンインストール:http://www.amy.hi-ho.ne.jp/tachibana/cygwin/uninstall.html]]
*NYAOS [#eb5c40bf]
cygwinとは関係ないが、似た効能がある。必要最小限な手軽さが良い。
-[[NYAOS Support Page:http://www.nyaos.org/index_ja.html]]
-[[NYAOSを使おう!:http://childs.squares.net/program/text04.html]]
*CDイメージ吸い出し [#p4366666]
大抵はisoなる拡張子がついているCDイメージを作りたいことがある。中にはライティングソフトにその機能がついている場合もあるが、cygwinで作成可能。
dd if=/dev/scd1 of=image.iso
でOK。scd1の数字は環境によって変化するので要確認。
以下を参考にした。
-[[/dev ファイルシステムと /proc ファイルシステム:http://www.sixnine.net/cygwin/cygwin-doc/devices.html]]
*X [#g62cb8e4]
cygwinでXサーバを動かすことも可能です(感動モノです)。[[@IT:http://www.atmarkit.co.jp]]の「真ゼロ円でできるXサーバ」
が参考になります。
-[[Cygwin/XFree86最新事情と日本語化:http://www.atmarkit.co.jp/flinux/special/cygwin2/cygwin01a.html]]
-[[Cygwin/XFree86でKDE & GNOME:http://www.atmarkit.co.jp/flinux/special/cygwin2/cygwin02a.html]]
とはいえこのあたりは変化が激しいので、既存の解説文書をアテにしすぎてもいけません。
*端末 [#m6d69a4d]
デフォルトではwindows付属のコマンドプロンプトが端末となるが、機能やフォントで何かと制限があって使い勝手が悪い。対策としては
-ローカルにSSHサーバ構築してお好みの端末でlogin([[PuTTYを使ってターミナルを使いやすくする。:http://bellbind.net/windows/putty.html]])
-[[CygTerm:http://www.dd.iij4u.or.jp/~nsym/cygwin/cygterm/]]
-[[ck - terminal emulator:http://www.geocities.jp/cygwin_ck/]]
などがあるようだ。現在のところ、ck(cko)を用いて以下のリンク先を持つショートカットを作るのが自分的に都合が良い。
D:\cygwin\bin\cko.exe -fn "好きなフォント名" -fs 12 -e bash --login
*その他のメモ [#ob165211]
古めなので、ひょっとしたらもう役に立たないかもしれません。
**ビープ音 [#fc4c4424]
Bash shellのビープ音は、[[ウィンドウズ処方箋:http://www.winfaq.jp/]]の中の[[ビープ音をやめたいのですが:http://homepage2.nifty.com/winfaq/wxp/hints.html#977]]を参考にして無効にできました。
**fluxbox [#o442b7c4]
Xが動くので、ウィンドウマネージャも選ぶことができます。cygwin用のパッケージを持つものもあるようです。
私は[[fluxbox:http://www.fluxbox.org]]を使っています。インストールの際は、cygwinのsh.exeがgetoptsを解釈せずmakeがコケるので、
/bin/sh.exeを消して同名で/bin/bash.exeへリンクを張りなおしたらうまくいきました。
**lv [#k596a1d5]
上に挙げた@ITによる解説で日本語化に成功したため、ページャも日本語化しようと試み[[lv:http://www.ff.iij4u.or.jp/~nrt/lv/]]をインストールしました。
makeはすんなり通りましたが、実行するとtermcapに「ktermなんぞ知らん」と怒られたので、
[[Cygwinとおたわむれ:http://www.netlaputa.ne.jp/~kuno/cygwinmain.html]]というページを参考にして /etc/termcap に以下の記述を加えたらうまくいきました。
vk|kterm|kterm kanji terminal emurator (X window system):\
hs:es:ts=\E[?e\E[?%i%dT:fs=\E[?F:ds=\E[?H:tc=xterm:
**LAPACK [#oe278017]
線型代数計算のライブラリとして高名な[[netlib:http://www.netlib.org]]のLAPACKですが、cygwinでも使用可能です。インストールにあたって特別な操作も殆ど必要ありません。ソースを持ってきて展開し、LAPACKディレクトリに移った後、以下の様にします。
$ cp INSTALL/make.inc.LINUX ./make.inc
$ make blaslib
$ make lapacklib
するとカレントディレクトリにライブラリができあがるので、それを適当な場所にコピーします。
$ cp ./blas_LINUX.a /usr/lib/libblas.a
$ cp ./lapack_LINUX.a /usr/lib/liblapack.a
これで使用可能となります。私はC++から使用することが多いのですが、externで宣言する際に関数名の後にアンダースコアをつけなくてはいけません。例えば以下の様にします。
// Ax = b
//
// A = ( 3 2 -4) b = ( -5 )
// ( 1 -7 2) ( -7 )
// (-6 5 8) ( 28 )
//
// solution: x = ( 1 )
// ( 2 )
// ( 3 )
#include<iostream>
using namespace std;
extern "C" {
int dgesv_( int *n, int *nrhs, double *a, int *lda, int *ipiv,
double *b, int *ldb, int *info);
}
int main(void){
int n = 3;
int nrhs = 1;
double A[9];
int lda = n;
int ipiv[3];
double b[3];
int ldb = n;
int info;
A[0] = 3; A[3] = 2; A[6] = -4;
A[1] = 1; A[4] = -7; A[7] = 2;
A[2] = -6; A[5] = 5; A[8] = 8;
b[0] = -5;
b[1] = -7;
b[2] = 28;
dgesv_( &n, &nrhs, A, &lda, ipiv, b, &ldb, &info);
cout << b[0] << endl;
cout << b[1] << endl;
cout << b[2] << endl;
return 0;
}
コンパイルの際のコマンドラインは以下のとおり。ライブラリへのパスが通ってないなら適宜Lオプションを加えます。
g++ hoge.cpp -llapack -lblas -lg2c -lm