差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
fltk:helloworld-simple [2025/06/06 10:46] – [ビルド] Fix typo freemikanfltk:helloworld-simple [2025/06/06 11:34] (現在) – 削除 freemikan
行 1: 行 1:
-====== 手軽なHello World ====== 
-[[fltk:|{{:fltk:fltk_shadow.png?200|}}]] 
- 
-このページでは、[[helloworld|Hello Worldのページ]]で使用したコードをより簡単な手順でビルドする方法を紹介します。 
- 
- 
-===== 前提 ===== 
-[[install|FLTKのインストール]]に従って、FLTK 1.4.3が $HOME/MikanBox 以下にインストールされているものとします。 
-違う場所にインストールした場合は((違う場所であっても全く問題ありません。))、パスをご自身のものに置き換えてください。 
- 
- 
-===== プログラムのソースコード ===== 
-[[helloworld#プログラムのソースコード|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以下にインストールされているので、次のようにします。 
- 
-<cli> 
-$ ~/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 
-</cli> 
- 
-すると、C++ソースファイルと同じ名前の実行可能バイナリが生成されます。 
- 
-<cli> 
-$ 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 
-</cli> 
- 
-あとは通常通り実行できます。 
- 
-<cli> 
-$ ./hello-fltk 
-</cli> 
- 
- 
-[{{ :fltk:fltk_hello.jpg |Hello Worldプログラムを実行中の画面}}] 
- 
-この方法は手早くプログラムを実行したいときに便利です。 
-例えば、FLTKの学習中にサンプルコードの動作を確認したいときなどに重宝します。 
- 
-ただし、精密さや柔軟さにおいては''fltk-config --cxxflags''や''fltk-config --ldflags''の出力を明示的にGCCに渡す方法よりも劣ります。 
- 
-両方とも覚えておいたほうが良いでしょう。 
  
文書の先頭へ