C++ GUI库FLTK的基本使用

1. Ubuntu下FLTK编译和使用

  • 编译源码
    • 安装依赖
    sudo apt install libx11-dev
    sudo apt install cmake make
    
    • 编译
    # 进入源码目录fltk-1.3.9
    mkdir build
    cd build
    cmake ..
    make
    
    • 库文件位于build/lib
  • 准备头文件
    # 此时位于build目录下
    mkdir include
    cp -r ../FL include/
    cp FL/abi-version.h include/FL/
    
  • 将库文件和头文件转移到项目目录,文件组织结构如下
    fltk-1.3.9-build
    |--- include
    |--- lib
    helloworld.cpp
    CMakeLists.txt
    
    • helloworld.cpp
    #include <FL/Fl.H>
    #include <FL/Fl_Window.H>
    #include <FL/Fl_Box.H>
    
    int main(int argc, char **argv) 
    {
        Fl_Window *window = new Fl_Window(340,180);
        Fl_Box *box = new Fl_Box(20,40,300,100,"Hello, World!");
        box->box(FL_UP_BOX);
        box->labelfont(FL_BOLD+FL_ITALIC);
        box->labelsize(36);
        box->labeltype(FL_SHADOW_LABEL);
        window->end();
        window->show(argc, argv);
        return Fl::run();
    }
    
    • CMakeLists.txt
    cmake_minimum_required(VERSION 3.20)
    project(HelloWorld)
    
    include_directories(${CMAKE_CURRENT_SOURCE_DIR}/fltk-1.3.9-build/include)
    link_directories(${CMAKE_CURRENT_SOURCE_DIR}/fltk-1.3.9-build/lib)
    add_executable(${PROJECT_NAME} helloworld.cpp)
    target_link_libraries(${PROJECT_NAME} PRIVATE fltk X11 dl)
    

2. Windows下FLTK编译使用

使用MinGW的命令:cmake .. -G "MinGW Makefiles"
使用MinGW生成的库文件为*.a
使用MinGW可能出现链接错误
安装w64devkit,包含gcc、g++、make等构建工具。

  • 编译源码
    # 当前目录为fltk-1.3.9
    mkdir build
    cd build
    # cmake .. -G "MinGW Makefiles"
    cmake ..
    # 使用VS打开解决方法,编译ALL_BUILD
    
    • 库文件位于build/lib/Release|Debug
  • 准备头文件
    # 此时位于build目录下
    mkdir include
    # 将../FL复制到include/
    # 将FL/abi-version.h复制到include/FL/
    
  • 将库文件和头文件转移到项目目录,文件组织结构如下
    fltk-1.3.9-build
    |--- include
    |--- lib
    helloworld.cpp
    CMakeLists.txt
    
    • CMakeLists.txt
    cmake_minimum_required(VERSION 3.20)
    project(HelloWorld)
    
    include_directories(${CMAKE_CURRENT_SOURCE_DIR}/fltk-1.3.9-build/include)
    link_directories(${CMAKE_CURRENT_SOURCE_DIR}/fltk-1.3.9-build/lib/Release)
    add_executable(${PROJECT_NAME} WIN32 helloworld.cpp)
    target_link_libraries(${PROJECT_NAME} PRIVATE fltk)
    
  • 编译运行
    # 此时位于项目目录
    mkdir build
    cd build
    cmake ..
    # 使用VS打开sln文件
    # 编译ALL_BUILD
    # 运行HelloWorld.exe
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值