hakeの日記

Windows環境でプログラミングの勉強をしています。

セルフ開発環境(dev-img1.3, Nokaji)

先日試したzgcc34は環境をアンマウントすると動作しないので、dev_imgを試してみる。こちらのページの下の方にあるdev-img.binを入手、これだとQTのアプリも作れるみたい。

設定

  • ~/.bashrcに以下を追加
export PATH=$PATH:/mnt/dev/bin:/mnt/dev/tmake/bin
export TMAKEPATH=/mnt/dev/tmake/lib/qws/linux-sharp-g++
export TMP=/hdd3/tmp   ←適当に空いてるエリアを使用
  • 念の為スワップを作成
  • dev_img.binをマウント、マウントポイントが/mnt/devであることに注意
  • 初期設定を行う
  • gcc -vでバージョン表示すればOK
$ su
# mkdir /mnt/dev
# swapon /hdd3/swapfile
# mount -o loop -t cramfs /hdd3/dev-img.bin /mnt/dev
# cd /mnt/dev/bin
# ./compiler_setup.sh -r /mnt/dev
# exit
$ gcc -v

hello.cのコンパイル

単純にコンパイルしたらエラー、stdio.hが無いと怒られた。どうやらincludeディレクトリが設定されていないみたい。incldeディレクトリを明示的にコンパイルしたらOK。ついでにいうとdev-imgをアンマウントしてもhelloは動作しました。-Iはエルでなくてアイ。

$ gcc -o hello -I/mnt/dev/include hello.c

hello.cppのコンパイル

こちらのサンプルプログラムをコンパイル。なおprogenやtmakeにはperlが必要なのでここからperlを入手。3つのソースファイルのあるディレクトリで以下を実行

$ progen -o hello.pro
$ tmake -o Makefile hello.pro
$ make

*.hが無いというエラー表示、Makefileの中をみるとINCPATHが$(QTDIR)/includeのみ、ちなみにQTDIR=/home/QtPalmtopです。以下の様にINCPATHに追加。progenやtmakeで勝手に追加させるようにするにはどうすれば良いのだろう?

INCPATH = -I$(QTDIR)/include -I/mnt/dev/include -I/mnt/dev/include/qt

念の為、make cleanしてから再度make、コンパイルできました!

./hello

で実行。これもdev-imgをアンマウントした環境でも動作しました。

Nokajiを試す

GUIでの開発環境であるNokajiを試してみます。

  • S.O. さんのサイト「紺青」からNokajiを入手インストール。バージョンは0.1.11a
  • LEO さんの「月記のページ」の連載(特にその4)を参考にhello.cをコンパイル。同じくNokaji上で実行するとHello Worldの後に“失敗”と表示されます。ターミナルでの実行は問題なしです。

hello.cppをNokajiでコンパイル

hello.cと同様にプロジェクトを作成して

  • 「ファイル」→「プロジェクトの設定」→「コンパイラ」→「インクルードパス」に"/mnt/dev/include /mnt/dev/include/qt"を追加
  • S.O. さんの「開発(+その他)日記」7月21日の記述内容にしたがって設定
  • 「プロジェクト」→「ビルド」、残念ながら*.oから実行ファイルを作成するところでエラー。moc_hello.o( 略 ): undefined reference ……というエラーがいくつか。
  • よくわからないので、「ファイル」→「プロジェクトの設定」→「コンパイラ」→「コンパイラオプション(C++)」の内容を上のMakefileの中のCXXFLAFS行の内容に置き換え
-pipe -DQT_QWS_EBX -DQT_QWS_CUSTOM -DQWS -fno-exceptions -fno-rtti -fsigned-char -DQT_NO_DRAGANDDROP -DQT_NO_PROPERTIES -Wall -W -O2 -DNO_DEBUG
  • 「プロジェクト」→「クリーンビルド」今度は無事終了しました。「プロジェクト」→「実行」ちゃんと動作しました(^^)

ZEditorのコンパイル

Satoshi村さんより最新版のZEditorのソースzeditor3.4.1_src.tar.gzをダウンロード、展開して、Nokajiに新規プロジェクトとして登録。設定は先ほど成功したとおりで「プロジェクト」→「ビルド」、あーまた同じエラーが発生して失敗。
試しにターミナルからコンパイルしてみる、zeditor.proが同梱されているので、これからtmakeでMakefileを作成。Includeのパスを追加してからmake。ちゃんとコンパイルできて、起動もできました。
Nokaji側の設定をMakefileの内容に一致させる様、オプションやインクルードパス、ライブラリパス、リンカ指定など修正するも、エラーの発生止まらず。何が異なるのか良くわからないです。