FLTK Windows+Mingw环境搭建


FLTK是一个跨平台的、简单快速的GUI库,相比Qt等专业GUI库来说可谓十分简陋,但对于简单的小程序正合适。它的环境搭建也比较麻烦,需要手动编译。这篇博文记录了搭建FLTK环境的过程。

准备

需要提前安装Mingw(GCC)和Git,也可用MSYS2替代。

环境:

项目
编译器 Mingw-w64 9.0 GCC 11.2
FLTK 1.3.8
Git 2.35.1.windows.2

1. 下载编译

到FLTK官网下载FLTK源码(fltk-1.3.8-source.tar.bz2)

找一个合适(路径比较短且为纯英文字母)的位置解压,注意如果用压缩软件的话应当解压两次,直到得到类似这样的文件夹结构

以解压出来的路径为C:\some\fltk-1.3.8\为例。
打开Git Bash。

进入C:\some\fltk-1.3.8\目录

cd /c/some/fltk-1.3.8/

编译FLTK。这需要三条命令:

./configure --prefix=/c/some/fltk
mingw32-make
mingw32-make install --ignore-error

尽管FLTK很轻量,这也得花点时间。

执行完后,FLTK就安装在了C:\some\fltk\中,打开看到有bin,include等文件夹一般就没多大问题了

2. 编写第一个FLTK程序

找一个合适的文件夹,以C:\some\fltkDemo\为例,创建一个main.cpp,写入:

#include 
#include 
#include 

int main (int argc, char ** argv)
{
  Fl_Window *window;
  Fl_Box *box;

  window = new Fl_Window (300, 180);
  box = new Fl_Box (20, 40, 260, 100, "Hello World!");

  box->box (FL_UP_BOX);
  box->labelsize (36);
  box->labelfont (FL_BOLD+FL_ITALIC);
  box->labeltype (FL_SHADOW_LABEL);
  window->end ();
  window->show (argc, argv);

  return(Fl::run());
}

在Git Bash中,运行

/c/some/fltk/bin/fltk-config --compile ./main.cpp

若无异常,应该能够成功编译出一个同文件夹的main.exe,这就是完整的FLTK程序,无需依赖任何其他文件。

双击运行运行main.exe

3.使用FLTK的UI设计器

FLUID真的太简陋了,在C:\some\fltk\bin\fluid.exe中,直接打开即可。

后日谈

FLTK的界面可谓是上世纪遗风,内置主题中也就Gtk+能看点