nDiki : Cygwin

Cygwin

関連情報

2004年7月24日 (土)

WindowsGNU Make

Windows だと nmake がやっぱり主流だろうか。 しかし GNU Make とは違う点が多く、使い分けるのも面倒。 かといって Ant というのも面倒。

ということで気軽に使える Windows 用の GNU Make を探す。 Cygwin 版は共同作業者に入れてもらうのが面倒なので却下(Makefile から呼ばれるコマンド群もLinuxと同様のものが入るのでこちらの方が便利といえば便利ではあるのだが)。

MinGW版が 3.80 をポーティングしているし単体でも動きそうなのでこれを試してみることにする。

mingw32-make-3.80.0-3.exe を取ってきて実行。make そのものだと思っていたがマニュアル等を含むインストーラだった。 一旦インストールして、mingw32-make.exe をコピーしてアンインストール。 mingw32-make.exe 単体で動作するので取り扱いが楽でよい(必要なら make.exe にでもリネーム)。

Windows 特有の問題があるかどうかは今後使ってみてチェックだな。

[ 7月24日全て ]

2004年7月31日 (土)

cwRsync

Windows でのファイルの同期には Unison を使ったりしているのだが双方向むけのものなので、目的によっては向かない事もある。

やっぱり rsync も使いたい。かといって Cygwin をインストールするのも面倒だし。

で探してみたところ cwRsync というのを発見。 これも Cygwin 上で動くものなのだが、rsync, ssh, ssh-keygen と cygwin1.dll 等必要最低限のDLL だけがパッケージされていて気軽にインストールできるようになっている。

exe 1個で済む Unison ほど扱いやすくはないが、Cygwin を1から入れるよりはずっと楽。

 daemon-mode protocol:
 rsync -rv rsync://rsync.samba.org/ftp/unpacked/rsync/ .

 ローカル:
 rsync -rv /usr/local/aaa .

 ローカル(ドライブ指定):
 rsync -rv /cygdrive/c/usr/local/aaa .

 リモート:
 rsync -e ssh -v www.example.com:/home/naney/a.txt .

などの動作を確認。ファイル共有しているリモートファイルのUNCによる指定はうまくいかない(Cygwin ではどうやって指定する?)が、ネットワークドライブ割り当てをすればアクセスできる。

[ 7月31日全て ]

2004年8月5日 (木)

OpenSSH for Windows

やはり Windows - WindowsUnison を使う事に未練がある。 リモートの Windows BOX で sshd をたてればなんとかなる?

ということで OpenSSH for Windows

Cygwin の中で必要なものだけを抜き出したパッケージ。 cwRsync と同じタイプ。

Windows XP Home Edition SP1 にインストーラでインストール後、説明どおり group と passwd を作成。 sshd をサービスとして開始する。 Internet Connection Firewall の設定を変更して22番ポートを開ける。

これで Linux BOX からSSH接続成功。

しかしなんか変なシェルで使いづらい。 またコマンドが実行に失敗してエラーモーダルダイアログが出る時は sshd が動いているPCの画面に表示される。SSHクライアント側からは知るよしもないし、ボタンを押すすべもない。

うーん。不便。

[ 8月5日全て ]

2005年2月23日 (水)

ActivePerlMing

ActivePerlMing を使えるようにしておきたい。

Visual Studio

Ming 0.3 beta1 のソースパッケージには Visual Studio 6.0 用のプロジェクトファイルが含まれている。 Cygwin の Bison と flex があればライブラリをビルドできるようだ。 横着して Linux 側で bison と flex で生成したファイルをコピーして(それから unistd.h をインクルードしている部分を消して)、ビルドしてみたところ一応 lib ファイルは作成成功。

しかし ActivePerl 用にPerl モジュールの make は失敗。

MinGW + nmakeActivePerl のモジュールをビルドできるらしい

調べたところ ExtUtils::FakeConfig を使うと Visual Studio が無くても MinGW + nmake でモジュールをビルドできるらしい(全てではないと思うが)。

ということで MingMinGWビルドした後、そのまま ActivePerl 用モジュールの作成まで持ち込むことにしてみる。

MinGW + MSYS + GnuWin32開発環境を構築

コンパイルに必要な環境を MinGW で、configure に必要な環境を MSYS で用意する。

bison は GnuWin32

Mingビルドに必要な Bison は MinGWMSYSインストーラに含まれていない。 bison-1.875.0-2003.02.10-1.exe というのが別途あるがうまく動かない。

ソースパッケージ(bison-2.0.tar.gz、bison-1.875.tar.gz)からはビルドできず。 MinGW/MSYSのプロジェクトにある bison-1.875-2003.02.10-1-src.tar.gz はビルドできるものの make check が通らない。

とうことで GnuWin32 の bison-1.875-4.exe (インストーラ形式)をインストール。 c:/usr/local/GnuWin32 にインストールした後、MSYS の /etc/fstab で /GnuWin32 にマウントし、/GnuWin32/bin に PATH を通しておく。

flexソースパッケージから

flex-2.5.4a.tar.gz を展開して

 ./configure; make; make check; make install

インストール時ハードリンクが作れなくてエラーがでているようだが無視。

zlib (Ming で必要)

MSYS 上でビルドしてインストール。zlib-1.2.2.tar.gz を展開して

 ./configure; make; make check; make install

LibUnGif for Windows (Ming で必要)

MSYS 上でビルドしてインストール。 libungif-4.1.0b1-src.zip を展開して

 rm config.cache;
 config.h内の-DHAVE_VARARGS_Hをコメントアウト。
 ./configure; make; make install

make check はエラーが出るが無視。

libpng (Ming で必要)

MSYS 上でビルドしてインストール。libpng-1.2.8-config.tar.gz を展開して

 CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib ./configure
 make; make check; make install

いよいよ Ming

MSYS 上でビルド。ming-0.3beta1.tar.gz を展開して

 CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib make static

ActivePerl 用モジュール作成

ExtUtils::FakeConfigPPM::MakeMingSWF PPM パッケージを作成する。 (MSYSシェルではなく)コマンド プロンプトを開いて、Mingソースパッケージの中の perl_ext に移動。 MSYSMinGWnmake にPATHを通しておく。

それから Makefile.PL の実行で -lz を発見できないので、libz.a を Makefile.PL と同じディレクトリにコピーしてしまう(-L/usr/local/lib を指定しても効かなかったので)。 libpng.a、libungif.a も同じくコピーしておく。

Makefile を作成。Makefile.PL では -lz しか指定していないが、libpng と libungif も必要なのでコマンドラインオプションで指定する。ExtUtils::FakeConfig の Config_m を使用して MinGW を使用するようにする。

 perl -MConfig_m Makefile.PL LIBS="-lpng -lungif -lz"

ここで生成される Makefile の中で libperl58.a を指定している部分があるが、ActivePerl では perl58.lib になるので、エディタで書き換え。 後はいつも通り

 nmake
 nmake test
 make_ppm

PPM パッケージ作成完了。

簡単なPerlプログラムでSWFファイルが作れる事を確認。 やった。

[ 2月23日全て ]

2005年3月30日 (水)

X-Deep/32 Xサーバ

Windows で Xサーバを使いたくなる衝動が時々やってくる。 今回は Linux 上の FirefoxWindows 側に表示させたいというのが希望。

Xサーバについては以前 Cygwin/X を試したりしたしてみたが、今は Cygwin 自体をアンインストールしてしまっている。今回は別のものを試してみることに。

Xming

MinGW を使っている。 設定は Cygwin/X とほぼ同じらしい。 Xサーバ以外は特に何もはいっていないし、これなら Cygwin/X を使った方が便利そう。

X-Deep/32 4.6.5

マルチウィンドウモード+ルートウィンドウ無しでXサーバを起動し、Linux BOX を許可するホストに追加。 Linux BOX 側から DISPLAY 環境変数か --display オプションを設定して Firefox を起動。 これで Windows 側に Firefox のウィンドウが表示される。

日本語は今のところ入力不可。表示はできる。

しかし1つのFirefoxから2つのDISPLAYに同時にウィンドウを出せないのか(別プロセスになってしまい、同じプロファイルを同時に使えない)。 これでは今回の目的は達成できず。

ちなみに X-Deep/32 はXクライアントのランチャもついているのだが、rsh か rexec による起動になる。ちょっと使えない。

[ 3月30日全て ]

2009年1月13日 (火)

Windows BOX も DAR増分バックアップ

直付け HDD なら pdumpfs にするところだが、ネットワーク上の別の HDD (TeraStation PRO) 上に保存したいので、DARバックアップすることにしてみた。

公式サイトから Windows 版バイナリをとってきて展開。 インストール無しにすぐ使える。

Cygwin ベースなのでパスの指定はちょっと変態的だが、問題なく動作。試した範囲では日本語ファイル名も OK だった。

バックアップ先を G: としてネットワークドライブ割り当てして、C: ドライブのホームディレクトリをバックアップ

フルバックアップ

 dar -c /cygdrive/g/var/DAR/mypc/mypc-home-2009-01-13 \
 -P var/Dropbox \
 -P var/TrueCrypt \
 -y9 -s 1G \
 -R /cygdrive/c/home/naney

増分バックアップ (差分バックアップ)

 dar -c /cygdrive/g/var/DAR/Dine/dine-home-2009-01-13.2009-01-14 \
 -A /cygdrive/g/var/DAR/mypc/dine-home-2009-01-13 \
 -P var/Dropbox \
 -P var/TrueCrypt \
 -y9 -s 1G \
 -R /cygdrive/c/home/naney
[ 1月13日全て ]

2013年2月5日 (火)

リモートホスト上の X クライアントの表示を Windows 7 + Cygwin/X + PuTTY

VirtualBox 上の Debian GNU/Linux BOX から sshfs でリモートホストのディレクトリをマウントして QGit を使って Git リポジトリのグラフ見てたりしてたけど、メモリもパワーも食うし起動も面倒。何げに今はリモートホスト側にも QGit がインストールされているので、Windows 7 に X server を入れることにした。

X server は普通に Cygwin/X で。setup.exe をダウンロードしてきて実行。X 関連も選択してインストール。

普段 PuTTY でリモートログインしていたので PuTTY で X11 forwarding させる。以下の手順で。

  1. Windows 7 上で「XWin Serrver」を起動。
  2. いつも接続に使っている PuTTY で如何を追加設定。
    • 「X11 フォワーディングを有効にする」をチェック。
    • X ディスプレイの場所を localhost:0.0 と設定。
  3. PuTTY でリモートホストにログイン。
  4. リモートホスト上で 環境変数 DISPLAY が localhost:10.0 になっていなければそのように設定する(sshd_config の X11DisplayOffset が 10 でなければ、それにあわせてディスプレイ番号も変更する)。
  5. リモートホストの Git リポジトリ上で qgit & を実行。

あっさり。

今日のさえずり: 5つ並んでいる TOTO の器の中で、奥から2番目のが一番きれい

2013年02月05日

  • 08:31 マジックハンド欲しい(洗濯機の後ろに小物が落ちるというインシデント発生)。
  • 09:29 山手線普通に乗れました。 (@ 品川駅 (Shinagawa Sta.) w/ 36 others) http://t.co/uovetB4T
  • 09:42 難なく到着。 (@ 渋谷駅 (Shibuya Sta.) w/ 36 others) http://t.co/zEWHHJaa
  • 09:51 1本見送り。
  • 10:21 メール + IFTTT + HootSuite 投稿遅延してたので油断ならない。
  • 11:29 LINE するより恋したい。
  • 13:35 本場イタリアンを。 (@ サイゼリヤ 渋谷青山通り店) http://t.co/E2vBOXZV
  • 13:57PuTTYを透過するために作ったソフト、『とらぷてぃ。』をアップデートしました。」 / “yuuAn's Note / とらぷてぃ。 v.1.5” http://t.co/fvFmrwxG
  • 14:17 改装後初めてきた。地下も初潜入。 (@ オルネ ド フォイユ Orne de Feuilles) http://t.co/PTAkA6QW
  • 19:17 VirtualBox 上の Debian GNU/Linux BOX から sshfs で開発環境のディレクトリマウントして QGit してたけど、起動面倒なので Cygwin/X 入れて QGit の画面もってくるように変更。
  • 19:32 5つ並んでいる TOTO の器の中で、奥から2番目のが一番きれい。
  • 19:42 おっと、EmacsCygwin/X の方に飛び出してきた。まあこれはこれでいいか。
  • 20:37 明日の出勤に関するメールを送りました。 > チームメンバ
  • 21:19 「大が降ったせいで◯◯◯は長い列さ」
  • 22:21家賃でポイントが貯まります」ってどう考えても損じゃん。はっ、全て……。
  • 23:20 LEXER設立20周年記念サロン・パーティの案内いただいた。20周年おめでとうございます。
  • 23:22 10年勤めたので半分はいたのか(でも名前間違えてきてた)。
[ 2月5日全て ]

2013年7月5日 (金)

今日のさえずり: 貪婪とか読めないし書けないし意味もわからない……

2013年07月05日

  • 07:14 TOKYO FM つけた。7:20 からの「追跡」聴きまーす。
  • 07:50 が「社長の声若い!」って言ってた。
  • 07:57 湿度計81%になっていて、これはたまらぬ。除湿運転スタート。
  • 09:25 @britty 毎回何かを証明する Blog 期待。
  • 10:30 「787242番目のEvrenoteユーザ」らしい。
  • 11:26 日曜日に向けてアイスを買っておく必要がある。
  • 12:13 知らなかった。欲しい。「人の力ではもうどうしようもないパソコンの不具合に多くの悩みをお持ちの方々が多くいらっしゃいます。」 / “神田明神|東京都千代田区外神田2-16-2|お守り - IT情報安全守護” http://bit.ly/19XPiOE
  • 13:21 RT @k12u: 楽天には「健康茶ランキングア行部門」といったものがあることを知って驚愕していた
  • 15:17 Windows 上で Emacs 使うのに gnupack 入れた。Cygwin/X でリモートホストの Emacs ひっぱって使っているのでまあ Windows 上に無くてもとても困るわけではないのだけれど。
  • 17:26 チクタクバンバン知っている人が少なくて悲しい。
  • 17:48 貪婪とか読めないし書けないし意味もわからない……。
  • 19:33 手塩にかけた新卒様に「おれ帰るから不具合調査よろ」的扱いを受けました。ありがとうございました。
  • 20:40 人狼の説明ちょっと聞いた。これってナポレオン?
  • 21:00 正面玄関突破。 (@ 株式会社ミクシィ (mixi, Inc.)) http://4sq.com/12KSDu0
  • 21:35 近所のセブン-イレブン、例の冷凍の麺置いてなかった。
  • 22:43 あっ。 / “YAPC::Asia 2013のイベントレポーターを募集しています | YAPC::Asia Tokyo 2013http://bit.ly/12haSqR
  • 22:43 品川モンベルがオープンしてたんだ! / “品川にアウトドアブランド「モンベル」複合ビル-地下にはカフェスペースも - 品川経済新聞http://bit.ly/11mOWAM
  • 23:28 ghc の -e オプションについて了解した。
  • 24:37 なんだ、普通に #!/usr/bin/runghc って書けるじゃないですか。
[ 7月5日全て ]

2014年2月5日 (水)

今日のさえずり: Ricty は Windows でサイズ 10 にすると欠けるので常用できないな

2014年02月05日

rimage:/nDiki/Flickr/12323262223.jpg

  • 13:01 Ricty は Windows でサイズ 10 にすると欠けるので常用できないな。 Migu 1M の方が見やすい。
  • 15:06 Cygwin/X にリモートの Emacs 24 の画面を持ってきた時に Ricty 使うのはまずまず。
  • 17:35 @as_tone 呼んだ?
  • 22:28 TwitterWeb 版、TWEETS 29.7K とかザックリになった(マウスオーバーするときちんとしたツイート数がホバーで出る)。
  • 23:46 特にこだわらず、動作確認済みリストの中からチョイス。 http://flic.kr/p/jLXWwk
[ 2月5日全て ]

2014年5月28日 (水)

Windows ノート PC で MobaXterm を使って Mosh

ノート PCサスペンドして移動してまた開いて使おうとすると SSH 接続が切れていてまた PuTTY で接続しなおしからとか、ちょっとコードを確認したり Emacsノートを取りたい時に不便。

そんな場合は Mosh (mobile shell) を使うと良いらしい。

ただ Windows だと Cygwin かーと思ったら MobaXterm が Mosh をサポートしているとのことなので入れてみることにした。

ポータブルアプリケーション版があるのでアーカイブを展開してそのまま使える。 Pageant に対応しているので、PuTTYPageant で秘密鍵管理している端末ならそのままさくっと使えるのも良い。

実際に MobaXterm + Mosh と PuTTY + SSH の両方で接続した状態で、サスペンド後に再開してみたところ後者が切れている場合でも前者はきちんとつながったままだった。

いい感じ。ノート PC ではしばらくこれを使ってみることにする。

[ 5月28日全て ]

About

Naney Naneymx

Naney (なにい) です。株式会社MIXIで SNS 事業の部長をしています。

※本サイトの内容は個人的見解であり所属組織とは関係ありません。

Process Time: 0.042565s / load averages: 0.42, 0.42, 0.41