温馨提示×

如何在ubuntu写c++界面

小樊
34
2026-09-05 12:00:07
栏目: 编程语言

在 Ubuntu 上写 C++ 界面程序,常见方案有 GTKmm(GTK 的 C++ 封装)Qt(C++ 主流跨平台 GUI)、以及更轻量的 FLTK / wxWidgets。下面按推荐程度上手难度给你一个清晰路线图。


一、最推荐:Qt(功能强、资料多、跨平台)

1. 安装 Qt 开发环境

sudo apt update
sudo apt install qtbase5-dev qtcreator cmake
  • qtcreator:官方 IDE
  • qtbase5-dev:Qt5 开发库

2. 第一个 Qt C++ 界面程序

用 Qt Creator(最简单)

  1. 打开 Qt Creator
  2. 新建项目 → Application → Qt Widgets Application
  3. 拖控件、写 C++ 代码即可

手动写最小示例

main.cpp

#include <QApplication>
#include <QLabel>

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);
    QLabel label("Hello Ubuntu");
    label.show();
    return app.exec();
}

CMakeLists.txt

cmake_minimum_required(VERSION 3.16)
project(demo)

find_package(Qt5 REQUIRED COMPONENTS Widgets)
add_executable(demo main.cpp)
target_link_libraries(demo Qt5::Widgets)

编译:

mkdir build && cd build
cmake ..
make
./demo

二、GTKmm(Ubuntu 原生风格,C++ 封装 GTK)

安装

sudo apt install libgtkmm-3.0-dev

示例

#include <gtkmm.h>

int main(int argc, char* argv[]) {
    auto app = Gtk::Application::create(argc, argv, "org.gtkmm.example");
    Gtk::Window window;
    window.set_default_size(300, 200);
    window.set_title("Hello GTKmm");
    return app->run(window);
}

编译:

g++ main.cpp -o app `pkg-config --cflags --libs gtkmm-3.0`
./app

三、轻量级:FLTK

sudo apt install libfltk1.3-dev
#include <FL/Fl.H>
#include <FL/Fl_Window.H>
#include <FL/Fl_Box.H>

int main() {
    Fl_Window win(300, 200, "FLTK");
    Fl_Box box(20, 80, 260, 40, "Hello FLTK");
    win.end();
    win.show();
    return Fl::run();
}

编译:

g++ main.cpp -o app -lfltk

四、怎么选?

方案 适合场景
Qt 商业/复杂软件、跨平台
GTKmm Linux 原生风格、GNOME
FLTK 小工具、嵌入式
wxWidgets 类 MFC 风格

五、建议学习路径

  1. 先装 Qt Creator
  2. 写几个按钮 / 窗口 / 布局
  3. 学信号与槽(Qt 核心)
  4. 再考虑多线程、文件、网络

如果你愿意,我可以:

  • 给你一个完整 Qt 界面项目
  • 教你 Ubuntu 下打包成 deb
  • 或对比 Qt vs GTK 实战差异

你打算做哪种界面程序?

0