HAIKU資料探索&実験

去年あたりからHAIKU向けプログラムを作ってみようと企んでは情報を集める段階で言語の壁等に阻まれて(言い訳)挫折を繰り返していました。
最近またHAIKU向けプログラミングを模索してみる気になったので少しローカルのHAIKU関連データを漁って見ました。
※ネットに接続できないため用語・ウェブサイトの名称等が間違っている可能性あり

HAIKUではプログラミングできない?

HAIKU向けのソフトを作ろうと思って検索すると飛翔BeOSランドさんをはじめとしたサイトの入門ページが出てくる。
だけど、それらの多くはBeOS R5の無償版が対象だったりしてR5 DevelopterEditionをダウンロードして〜なんて書いてあることが多い。
ネットが自由に使えた当時はそれで素直にR5をダウンロードすればよかったはずなのですが、何故かBeOSをダウンロードせずHAIKUにBeIDE突っ込んでみて色々試行錯誤していたのでした。

gccではGUIアプリをコンパイルできない?

以前、BeOS向けソフトのソースを入手してmakeしてみたのですが、うまくコンパイルできませんでした。
何がいけないんだろうと考えて、コンパイラの違いに思い当たりました。
本家BeのコンパイラCodeWarrior(mwcc)、HAIKUgccと違うコンパイラを使っています。
当時の私はこれが原因だと決めつけコンパイルを諦めました。

いや、そのソースが古い?

今はそのソースが手元にないので何ともいえませんが、もしかしたらソースが古かったのかなとも思いはじめました。
例えば、BeOSがまだR2の時に書かれた資料「Art of BeOS Programming」(著 古賀信哉氏)の中には
/boot/develop/headers/be/precompiled/BeHeadersPPC
というファイルがmakefileのサンプルに記述されています。
しかし、R5とソース互換を目指して開発されているHAIKUにはBeHeadersというファイルはおろかprecompiledというディレクトリすら存在しません。
つまり、バージョンアップでR5までの仕様変更でコンパイルが通らないようになっちゃったのでは?ということ。

近いバージョンのサンプルコードなら?

また少しデータ漁りをしていると「BeOSプログラム学習記」(著 北原氏)にはBe.hなるファイルの記述が。
この資料はR4.5の環境で書かれた物ですが、こっちはHAIKUにもあります。
もしかしたらこの資料のサンプルコードはコンパイルが通るかも!!? と思いレッツTRY!!
...しかし失敗。
Lesson 1のコードをコピーしg++に突っ込みましたが動きません。
「オブジェクトはbe_appに自動的に割り当てられます」との事ですが「undefined reference to 'be_app'」って怒られますよ(泣)
他にも大量にエラー出てるけど、とりあえずbe_appの記述で端折られてると思われる部分を補完して再度コンパイル
be_app関連のエラーは消えたものの残りのエラーはそのまま。
残ったエラーは以下みたいなのが延々と続く。
lesson1.C++:(.BaseApp::gnu.linkonce.d._vt.7BaceAPP+0x26): undefined refarence to `BApplication::BApplication(char const*)'
/tmp/ccguQQFd.o:(.gnu.linkonce.d._vt.7BaceAPP+0x14): undefined refarence to `BApplication::Archive(BMessage *,bool)'等

...駄目だ、講習でVC++の古いのを触りだけ習った私には分からない!!
ネットで調べることもできないし、今回のHAIKUプログラム開発計画はここで頓挫。