■
新しい仕事場になって開発環境がガラリと変わった。
作業用PCは、ThinkPad A22e(Pen3タイプ)で、OSはWindows98 SE。
IE6を2個起動しただけでリソースメータが黄色になる。MEでないだけ救いだが、Win2000がいい。
ちなみにOfficeは98。FrontPageなし。
HTML編集(chm構築)環境が無い・・・というか、chmは格好いいが目次作るのが手間。chmの話は秘密にしとこう。
フロアを見回すと2000やXPがあったり、ドメインサーバがNT(純粋にNT4かもしれないが)だったりするので、仕事場全体が化石しているわけではない様子。
なぜ、Windows98が支給されたかというと理由がある。
デバッグでDOSを使うから。
なにしろ製品の制御をするターゲットがi486のPC相当の構成でOSがDOSだから。
かつて、NECがPC-98x1からAT機にシフトしてからもFC-9801という型番で98互換機を作りつづけていた。
いまは作っていないようなのだが、それに似たような感じのターゲットマシンに載せるソフトを作るのがここでの仕事になる。
たまにLinuxがどうとか、UNIXがどうとか言っているのを聞くのだがそれらもターゲットにしてるの? ちょっと興味ある。
TRONとかRTLinuxとか新しい(というよりも一般的にあまり触れない)OSに挑戦したいと思う昨今。
んで、Win98(Win32ファミリ)はDOSの上にWin.comというGUIが乗っている(・・・懐かしい)。
なので、DOSが触りやすい(いままでやったこと無かったんだけど、製品のソースはI/O周りを平気でたたいている)。
NTはそのあたりががっちりブロックされているので開発機をNT系にしてしまうとコンパイル即デバッグという流れが断たれてしまう。なのでWin98。
ネットには、DOSのエミュレータもあるがI/O周りの対応を考えなければいけない。少なくとも自作しないと対応は無理だと思われる。
のろくなる、終了しない、いろいろ問題のあるWin98は正直勘弁してほしい。
コンパイラはWatcom C/C++(以下、WC)。かつてのデモシーンで定評のあるコンパイラ、という認識だったのだけどこんなところで出会うとは思わなかった。
WCのIDEにはエディタが無い。プロジェクト管理のみ。
プロジェクトに含めたソースを選ぶと関連付けされたエディタが起動する。
自分は秀丸を使っている。grepとタグジャンプが便利なので。ワンキーでマーク付け、マークジャンプができたら最高なんだけど。そう考えるとVCは優秀な開発環境だと思う。
諸先輩はMIFES(DOS版)を使っている人が多い。
ちなみにその諸先輩とは、
「エディタなに使う?」
「秀丸を」
「なに?」
「秀丸エディタ、というシェアウェアのエディタがあるんです」
というやりとりを初日に繰り広げた。正直びっくりした。
なので、WCのIDEはwcc386でターゲットをワンキーでコンパイルするだけ(もちろんリンクもします)に起動してある。ちなみにクリーン(中間ファイル、出力ファイルの自動削除)は無い。
コンパイルのログを見ていると、makefileが書けそうな気がしてきたので、cygwinを入れてみた。
bashにコマンドが打てるまでにかかる起動時間がかかりすぎる。使い物にならん。
makefileを書いてみたが、うまくコンパイルが通らない。上述の理由とあいまってcygwinは使い物にならないという結論になった。
コマンド・ファイル名補完が便利なのに・・・DOS窓でDOSKEY入れて履歴だけでも参照できるようにする。
さて、毎日帰る前にソースファイルをサーバにコピーしてバックアップを取らなければいけないのだけど、先のクリーン機能が無い。
そのため、削除対象のファイルをワイルドカードで検索してヒットしたものだけ削除、という方法をとっている。
ソースの管理は基本的に手動である。鮮度の比較はタイムスタンプが命。
また、製品には日本向け・海外向けがあり、ロケール以外はほとんど同じ。
だがたまに落とし穴がある。
ソースコード管理を入れたい。
前の仕事場ではVSSを使っていたが、ここにはそんなものは無い。
導入しようと呼びかけても化石どもは面倒くさがって入れないだろう。使いこなせるイメージが浮かんでこないのもあるけど・・・。
ソースコード管理というと、VSS以外にCVSがあるのだが、使ったことが無い。
自分自身もソースコード管理を使いこなす自身は無い。でも、無いと不安。VSSを使っていて少なくとも「無秩序よりも(質はおいても)秩序あるべき」という考えになった。
ってことで、WinCvsをローカルに導入。こっそり使い方を覚えようと思う。
差分もとれるし総合的に便利だと思うんだけどな>ソースコード管理
# チェックアウトしてるファイル以外は読取専用にしてタイムスタンプのうっかり更新も防げるし
とりあえず、化石の中で仕事してます。
ちなみに忘年会の席で「いろいろ便利なこと知ってそうだから、教えてね」と言われたが、多分教授しません。
紹介しても無駄な気がするので、現時点では。
気が変わるのを待っててください;-)