手軽なHello World

このページでは、Hello Worldのページで使用したコードをより簡単な手順でビルドする方法を紹介します。

前提

FLTKのインストールに従って、FLTK 1.4.3が $HOME/MikanBox 以下にインストールされているものとします。 違う場所にインストールした場合は1)、パスをご自身のものに置き換えてください。

プログラムのソースコード

Hello Worldのページで使用したものと全く同じです。 同じファイルをそのまま使ってもいいし、コピーを作成してもどちらでも良いです。

ビルド

FLTKに同梱されているツールfltk-configには、C++コンパイラのフラグを取得する以外の機能も含まれています。 その一つに、1コマンドでコンパイル・リンクを行い実行可能バイナリを生成を完了させるものがあります。 使い方は至って簡単です。 1ファイルで完結するFLTKを利用するプログラムならば、

fltk-config --compile program.cpp

これだけです。

複数のソースファイルで構成される場合や、FLTK以外のライブラリも使用する場合も対応できます。

fltk-config --compile source1.cpp [source2.cpp source3.cpp ...] [-I追加のインクルードパス その他のコンパイルフラグ ...] [--link 追加のリンカフラグ ...]

今回のHello Worldプログラムは1ファイルだけで、FLTK以外のライブラリを直接必要としていません。 また、FLTKは$HOME/MikanBox以下にインストールされているので、次のようにします。

$ ~/MikanBox/bin/fltk-config --compile hello-fltk.cpp 
/usr/bin/c++ -I/home/freemikan/MikanBox/include -I/home/freemikan/MikanBox/include/FL/images -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_THREAD_SAFE -D_REENTRANT -o hello-fltk hello-fltk.cpp /home/freemikan/MikanBox/lib/libfltk.a -lm -lX11 -lXext -lpthread -lXinerama -lXfixes -lXcursor -lXft -lXrender -lfontconfig -ldl

すると、C++ソースファイルと同じ名前の実行可能バイナリが生成されます。

$ ls -l
合計 1508
-rwxrwxr-x 1 freemikan freemikan 1536720  6月  6 10:21 hello-fltk
-rw-r--r-- 1 freemikan freemikan     542  6月  6 10:20 hello-fltk.cpp

あとは通常通り実行できます。

$ ./hello-fltk
Hello Worldプログラムを実行中の画面

この方法は手早くプログラムを実行したいときに便利です。 例えば、FLTKの学習中にサンプルコードの動作を確認したいときなどに重宝します。

ただし、精密さや柔軟さにおいてはfltk-config --cxxflagsfltk-config --ldflagsの出力を明示的にGCCに渡す方法よりも劣ります。

両方とも覚えておいたほうが良いでしょう。

1)
違う場所であっても全く問題ありません。
文書の編集
文書の先頭へ