2007/07/13

KDEプログラミング その1

最近Vine Linux 4.1でKDEを使いはじめました。

で、リハビリがてらKDEのプログラミングでもしてみようかと思い付き、KDEの本家のページのチュートリアルでもやってみることにしました。
  Development/Tutorials/KDE3 (Yahoo!翻訳)

ちなみに、うちのVine Linux 4.1に入っているKDEは3.5.7、Qtは3.3.5みたいです。


まずはこちらの「Hello World!」のmain.cppをそのまま写してコンパイル・・・、しようとしたけどコンパイル方法が書いていない。

日本KDEユーザ会のチュートリアルのこちらのページの一番下にあるのに倣い、次のようにコマンドを叩きました。

$ g++ -I$QTDIR/include -o hello main.cpp
-L$QTDIR/lib -lqt
/usr/bin/ld: cannot find -lqt
collect2: ld はステータス 1 で終了しました


・・・エラーになります。

-lqtが見付からないということなので、探してみました。

$ ls $QTDIR/lib
libdesignercore.a libqt-mt.so@ libqt-mt.so.3.3.5*
libqui.so.1.0@ libeditor.a libqt-mt.so.3@
libqui.so@ libqui.so.1.0.0* libqassistantclient.a
libqt-mt.so.3.3@ libqui.so.1@


確かにlibqt.soとかはありません。

libqt-mt.soというのがなんとなく当たりかなと想像し、これで試してみました。

(ちなみに次に打ったコマンドは試行錯誤中のものです。これが正解ではないと思います。)

$ g++ -I$QTDIR/include -o hello main.cpp
-L$QTDIR/lib -lqt-mt

$ ls
hello* main.cpp


成功したみたいです。
実行してみたところ、次のようなプログラムが動きました。



ただ、「-lqt-mt」で正しいのか分かりません。
Qt3でのコンパイル方法をGoogleで調べてみたのですが、よく分かりませんでした。


Trolltechのサイトもチュートリアルがありました。
  Qt Reference Documentation (Yahoo!翻訳)

こちらを見てみるとg++を直接叩くのではなく、qmakeを使用してMakefileを作成しています。
それに倣ってやってみました。

$ rm hello ←最初に作ったプログラムを削除
$ qmake -project
$ ls
main.cpp p1.pro
$ qmake
$ ls
Makefile main.cpp p1.pro


Makefileが出来たみたいです。

それではmakeしてみます。

$ make
g++ -c -pipe -Wall -W -I/usr/include/freetype2 -O2
-m32 -march=i386 -mcpu=i686 -DQT_NO_DEBUG
-I/usr/lib/qt3/mkspecs/default -I. -I.
-I/usr/lib/qt3/include -o main.o main.cpp
g++ -o p1 main.o -L/usr/lib/qt3/lib
-L/usr/X11R6/lib -lqt-mt -lXext -lX11 -lm
$ ls
Makefile main.cpp main.o p1* p1.pro


p1というプログラムができました。

p1という名前になったのは、カレントディレクトリがp1だからだと思います。多分。

で、実行してみました。


動きました。
最初のとまったく同じですけど。


こんな感じで、少しずつ覚えてみようかと思います。


最近できたGoogleブック検索でタイトルQtで調べると、他の国ではQt3とかQt4の本が出てきますね。

アマゾンで調べると「Qt GUIプログラミング」という本が見つかりました。

レビューを読むとQt3みたいです。

私もとりあえずKDE3とQt3を使ってみようと思っているので参考に買ってみようかな。


KDEプログラミング その2」につづく

0 件のコメント: