7/18/2011

読書について

どうもJudaです。
つらつらと

読書をしながら線を引いたり、
ノートを取ったり、
最近は読むという行為から一歩踏み込んで、
能動的に取り組んでいる。
しかしこの行為をすればするほど、
まとめるという行為が如何に難しいのかが、
明瞭になってくる。

まとめるために能動的に取り組んでいるのではないが、
ノートの分量は増えるし、書き込みも増えてくる。
そうなるとやはり視認性が落ちるし、網羅性も悪くなる。
だんだん頭の中が混線しているような感覚に囚われる。
そういう感覚を契機にして、ふっと、まとめようと思う。
しかし此処に至って、自分が如何に濃度の低い読書をしているのか
突きつけられる。うまくまとめられないのだ。

まとめようにもそれらをまとめていくための柱がうまく決められない。
作者の考えをなぞりながらも、自分の言葉で補足と訂正をおこなうのだが、
事柄をまとめていくための柱と道筋がうまくまとめられない。
なかなかままならぬのだ。

高等教育を受けさせてもらってはいたのだが、
この程度のことも満足できないことに情け無さを感じるが、
しかしやらねばならぬから、じりじり道を登るしかないのである。

Mac OS X+XCode4+Boost

どうもJudaです。
今日はMacOSXでXCode4を使って、Boostライブラリを利用するときの話。
一般的にはMacPortをつかうみたいですが、i386のアーキテクチャ部分がうまく噛み合わなくて、ライブラリがビルドできなかったりするので、直に使う方法をとります。
基本的にはMacOSXと云えども、Unix系なので、Boostをビルドしたりはできます。
BoostをサイトからDownloadして、展開しておきます。
この段階でstatic libraryを使わないものは利用可能な状態になっています。

XCodeにインクルードパスを追加するときには、VisualStudioとでは考え方がちょっと違って、「ヘッダーを検索するためのパス」を登録しなければいけません。そのため、項目の名前がSearch Header Pathsになってます。User〜というものあるのですが、違いがわかりません。ライブラリに関しても追加ライブラリパスは「ライブラリを検索するためのパス」を登録ということになります。

とりあえずstatic libraryのいらないものはこれでなんとかなります。
次にstatic libraryとかですが、BoostをDarwinでビルドする事になります。なんだかわかんないですけど、BoostのGet Start 〜で書かれているStepにしたがって行います。この時に bootstrap.sh --Prefix=/Path/to/installっていうのがあります。
Unixに慣れている方は普通なのかもしれませんが、WindowsのVisualStudioから来た人にはわかりにくいので、
./b2 というビルドコマンドを発行するだけだと、ビルドをするだけで、./Build installだとさっきの--Prefixで指定したパスへ生成物と必要なものをコピーします。Defaultだと/usr/localになってます。このディレクトリはアクセス制御されていて、読み込みのみの許可になっているので、sudo ./b2 install という風にしてやらないとうまくコピーが出来なくて悩むことになります。

あとはDarwinがGCC4.2のコンパイラを使っているので、XCodeのDefaultのコンパイラ LLVMとは生成物の形式が違うので、dynamic link をさせたときにエラーで落ちる原因になります。要注意です。


んで、実はProgram_Optionsを使ってみようと思っていて、組んで、ビルドはできるけど、うまく実行できず。
CommandLineOptionがうまく機能していないくて大変悲しい目にあってます。

XCodeでCommandLineOptionを指定するときにはXCodeのメニューバーのProductに該当するItemの下の方のEditSchemeで表示されるDialogのRun Argumentみたいな内容の奴にCommnad Line Optionが云々というのがあります。そこを設定すれば一応起動時の引数にはなるようです。