日記帳

日記です。

いつの間にか Cygwin の 64bit 版がリリースされてた

最近 cygwin の setup.exe によるパッケージ更新が失敗するなぁとか思いながらもずっと放置していました。さすがにちょっと調べてみるかと思って Cygwin をみてみたらいつの間にか Cygwin の 64bit 版がリリースされている。

どうもこれに合わせてインストーラが2種類に分かれて、パッケージリポジトリディレクトリ構成も変更になったらしい。

種類 インストーラ リポジトリの例
旧32bit setup.exe ftp://ftp.jaist.ac.jp/pub/cygwin/
新32bit setup-x86.exe ftp://ftp.jaist.ac.jp/pub/cygwin/x86/
新64bit setup-x86_64.exe ftp://ftp.jaist.ac.jp/pub/cygwin/x86_64/

旧32bitのリポジトリのパスからパッケージ情報がかかれたファイルである setup.ini が取得できなくなったため、setup.exe でのパッケージ更新ができなくなったということみたい。

対応としては以下の2パターン。

  1. 旧32bit Cygwin を setup-x86.exe を使って更新する
  2. setup-x86_64.exe を使って新しく 64bit Cygwin 環境を構築

1. はもっとも簡単な方法です。32bit Cygwin は新旧ともに基本的に同じものなのでインストーラだけ新しくして元の環境をそのまま継続して使います。

2. は 64bit Cygwin 環境を最初から構築しなおすってことです。 setup-x86_64.exe はデフォルトで C:\Cygwin64 というディレクトリに インストールします。ホームディレクトリも含めて別環境になるので 完全に環境を作り直すことになります。

32bit Cygwin と 64bit Cygwin は両方独立してインストールすることもできるみたいなので、当面 32bit 環境を使いつつ 64bit 環境を 試してみる方法もありあそうです。

Cygwin 野良リポジトリ

インストーラの仕様変更により野良リポジトリディレクトリ構成も変更する必要があるってことです。

自分で作っている以下のリポジトリも対応しないといけない…

とりあえずシンボリックリンクで対応するか…

可能なら 32bit 版と 64bit 版両方のパッケージを用意するのがいいんでしょうけど、なかなか面倒ですね…

技術書を読んだら書くブログ

このブログは技術書を読んだら書くブログです。

 ブログを書かなくなるパターンとして、ネタがなくなると書かなくなってしまって、書かない期間がある程度長くなると、ネタがあっても何となく書き難い感じになってしまう、というのがあります。書かないから書き辛くなるというという負のスパイラルですね。

 そこで考えました。ブログを書くトリガーを設定すればいいんじゃないかと。「何々をしたら書く」という条件設定をしてそれを習慣化すれば少しはブログ記事が書きやすくなるんじゃないだろうか?

 ということで、このブログは技術書を読んだ時に、その本について書くブログです。

2012年総括とか

年が明けてからでなんだけど2012年の総括というかまとめ。あとあけましておめでとうございます。

見たところ前に日記書いたのは 2011年12月31日だった。要するに2012年には何も書いてない。

つまり、2012年とはそんな年だったということだ。


# ちょっと反省してます…

寝正月

昨年末の12月29日から実家に帰省していましたが、完全に寝正月でした。
具体的には以下のような感じ…

  • 12/29 夕方に帰省。
  • 12/30 体調が悪くて半日くらい寝てたら夕方から高熱。最高で39.2度。寝る。
  • 12/31 夕方には38度前半くらいに。一日寝る。
  • 1/1 37度台になってだいぶ動けるようになってきた。TVを見たり寝たり。
  • 1/2 熱は平熱になったけど肩から背中あたりが痛い。あと胸に圧迫感があって息苦しい。とりあえず寝ておく。
  • 1/3 痛みや息苦しさはだいぶ楽に。一応大事を取って寝る。

こんな感じで年末年始が終わりました…

何もしない年だった

今年は日記を5日しか書いていないという事実に戦慄した。

書くことがないということはないはずなんだけど。昔とやっていることがあまり変らないので自分のやっている事に対して心動かされることがなくなってきているのだろう。その結果として日記を書きたいとも思わなくなってくるんだろうなぁ…

昔誰かに聞いた「人の心は差分しか感じない」っていう言葉を思いだした。(MPEG?)

MinGW のインストール

久しぶりに MinGW をインストールする.
いつの間にか MinGWインストーラも様変わりしているようなのでインストール手順を記録.

MinGW インストーラの取得

http://www.mingw.org/ の Download から以下の順番にたどって
最新版の mingw-get-inst-20110530.exe を取得します.

コンパイラと MSYS のベースシステムをインストール

mingw-get-inst-20110530.exe を起動



インストールするパッケージのリポジトリの設定.以下のいずれかを選ぶ.

  • 特定の時点でパッケージングしたものをインストール
  • 各パッケージの最新版をインストール


ライセンスへの同意.「I accept the agreement」 をチェックして次へ.


インストール先のフォルダの設定.今回はデフォルトの「C:\MinGW」へインストールします.


メニューへの登録名の設定.今回はデフォルトの「MinGW」のまま次へ.


インストールするコンポーネントの設定.以下のパッケージから選択します.

  • MinGW Compiler Suite
    • C Compiler
    • C++ Compiler
    • Fortran Compiler
    • ObjC Compiler
  • MSYS Basic System
  • MinGW Developer Toolkit

今回はすべてインストールするのですべてにチェックを付けました.


設定内容を確認したうえでインストール開始.


しばらくパッケージのダウンロードと展開作業が続いて終了します.

コンパイラの動作確認

スタートメニューから MinGW -> MinGW Shell を選んでシェルを起動します.

$ vi hello.c
sh: vi: command not found

ショック….と思ったけど vim って打ったら vim は起動した.とりあえず以下の内容でファイルを作成.

#include<stdio.h>
int main(int argc, char* argv[])
{
        printf("Hello, MinGW world!!\n");
        return 0;
}

保存したらコンパイルして実行してみる.

$ gcc -o hello.exe hello.c

$ ./hello.exe
Hello, MinGW world!!

ちゃんと動いたっぽいので動作確認終了.

おまけ

$ gcc --version
gcc.exe (GCC) 4.5.2
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

gcc のバージョンは 4.5.2 らしい.