如何在 Debian 10 中編寫和運行你的第一個 Qt 程序

Qt 是一個免費的、開源的、跨平台的桌面、嵌入式和移動應用程序開發框架。 它支持各種平台,如 Linux、OS X、Windows、VxWorks、QNX、Android、iOS、黑莓、Sailfish OS 等。 不僅僅是一種編程語言。 Qt 是一個用 C++ 編寫的框架。 預處理器元對象編譯器用於擴展 C++ 語言,使其具有信號和槽等功能。 在編譯步驟之前,MOC 會解析用 Qt 擴展 C++ 編寫的源文件,並從中生成符合標準的 C++ 源代碼。 因此,框架本身和使用它的應用程序/庫可以由任何符合標準的 C++ 編譯器編譯,如 Clang、GCC、ICC、MinGW 和 MSVC。

在本文中,我們將首先介紹如何通過命令行安裝 Qt Creator。 然後,我們將解釋如何編寫一個簡單的 Qt Hello World 程序並運行它:

  • 命令行
  • Qt 編譯器 GUI

我們已經在 Debian 10 Buster 系統上運行了本文中提到的命令和過程。

安裝 Qt Creator

讓我們首先安裝 Build Essential,它是一個元軟件包,可讓您在 Debian 中安裝和使用 C++ 工具。

通過應用程序啟動器搜索欄打開 Debian 命令行終端,如下所示:

然後運行以下命令 sudo 為了使用 Internet 更新您的本地存儲庫索引:

$ sudo apt-get 更新

此命令可讓您安裝 Internet 上可用的最新可用軟件包。

現在,運行以下命令 sudo 為了安裝 Build Essential 包:

$ sudo apt-get install build-essential

安裝構建基本工具

請注意,只有授權用戶才能在 Debian 上添加、刪除、更新和配置軟件。 請提供您的密碼並在系統提示您選擇繼續安裝時輸入 Y。

接下來,運行以下命令 sudo 為了安裝包含用於 Qt 項目創建和執行的 UI 和命令行工具的 Qt Creator 包。

$ sudo apt-get 安裝 qtcreator

安裝 QT Creator

當系統提示您選擇繼續安裝時,請輸入 Y。

如果您希望將 Qt 5 用作默認的 Qt Creator 版本,請運行以下命令:

$ sudo apt-get install qt5-default

安裝 QT 5

當系統提示您選擇繼續安裝時,請輸入 Y。

為了以後部署更複雜的項目,您需要安裝 Qt 文檔和示例。 您可以通過運行以下命令來做到這一點 sudo:

$ sudo apt-get 安裝 qt5-doc qtbase5-examples qtbase5-doc-html

  • qt5-doc:這個包包含 Qt 5 API 文檔。
  • qtbase5-examples:此包包含 Qt Base 5 示例。
  • qtbase5-doc-html:這個包包含 Qt 5 Base 庫的 HTML 文檔。

安裝 QT 文檔和示例

當系統提示您選擇繼續安裝時,請輸入 Y。

您現在可以使用 Qt Creator 命令行和 UI 工具了!

你的第一個 Qt 程序; 從終端編寫和編譯

像我這樣精通終端的人總是在尋找終端本身內所有編程問題的解決方案。 畢竟,從 Debian 命令行編寫和編譯 Qt 程序非常簡單。 請按照以下步驟從終端編寫和執行一個簡單的程序 Qt 程序。

第 1 步:創建項目目錄

讓我們首先創建一個工作目錄,稍後將用作我們 Qt 項目的項目目錄。

$ mkdir 示例項目

當然,您可以根據自己的意願選擇項目和文件名。 當您按照本教程的步驟進行操作時,請保持一致並小心使用它們。

創建QT項目目錄

第二步:在項目目錄下創建一個.cpp文件

通過以下命令移動到新創建的項目目錄:

$ cd 示例項目

然後,通過 nano 編輯器在該目錄中創建一個主 .cpp 文件,如下所示:

ano nano testmain.cpp

當然,您可以為此使用任何您喜歡的文本編輯器。

創建郵件文件

在空白文件中,複製這個 Qt 程序,其唯一目的是在窗口上打印一行標題為“我的第一個 Qt 程序”的句子。

#include #include #include int main(int argc, char *argv[ ]) { QApplication app(argc, argv); QLabel hello(“

歡迎使用我的第一個 Qt 程序
“); hello.setWindowTitle(“我的第一個 Qt 程序”); hello.resize(400, 400); hello.show(); 返回 app.exec(); }

提示:您可以通過從此處選擇此代碼來複製該代碼,然後使用 Ctrl+Shift +V 快捷方式將其粘貼到文件中。 或者,您可以使用“文件”中右鍵單擊菜單中的“粘貼”選項粘貼選定的測試。

QT測試程序

使用 Ctrl+X 快捷鍵退出文件,然後輸入 Y 保存它,然後點擊 Enter.

第 3 步:創建 Qt 項目文件

保存文件後,運行以下命令以創建 Qt 項目文件:

$ qmake -project

構建項目

運行ls命令會顯示上面的命令已經在項目目錄下創建了一個名為SampleProject.pro的文件。 這個項目文件是 Qt 項目的基本骨架文件,可以為複雜的目的進行編輯。

第四步:對Qt工程文件稍加配置

由於我們想從命令行編譯出項目,我們需要將以下行添加到我們的 .pro 文件中。

QT += gui 小部件

在 nano 編輯器中打開 SampleProject.pro 文件如下:

$ sudo 納米樣品項目.pro

編輯示例項目文件

添加上述類似和 Save 通過按 Ctrl+X,然後輸入 Y 並按 Enter.

第 5 步:運行 qmake 使項目特定於平台

要使 .pro 文件平台特定,您需要在項目文件上運行以下命令:

$ qmake SampleProject.pro

使用 qmake 構建項目

這將在項目目錄中創建一個名為“Makefile”的文件。 您可以像我一樣通過運行 ls 命令來驗證這一點。

第 6 步:為項目創建並執行 Qt 文件

下面的 make 命令將幫助您將 Makefile 編譯成可執行程序。

$ make

運行 make

如果您的項目中沒有錯誤,此命令應在您的工作目錄中創建一個可執行程序。 您可以像我一樣通過運行 ls 命令來驗證這一點。

綠色的 SampleProject 文件是我的可執行 Qt 程序。

第 7 步:運行可執行文件

最後,我們準備好通過終端運行我們在最後一步中創建的可執行文件。 運行以下命令來執行此操作:

$ ./示例項目

這是程序的輸出:

執行QT程序

帶有我們在代碼中提供的標題和標籤的窗口!

你的第一個 Qt 程序,從 Qt Creator UI 編譯

如果您有興趣從 Qt Creator UI 執行相同的程序,請按照以下步驟操作:

通過如下所示的系統應用程序啟動器搜索或直接通過應用程序列表啟動 Qt Creator 應用程序。

Qt Creator 圖標

您甚至可以通過在終端中輸入以下命令來啟動它:

$ qtcreator

該應用程序將在以下視圖中打開。

通過單擊以下項目視圖中的新建項目按鈕創建一個新項目:

QT 創作者

這將打開新文件或項目視圖,如下所示:

新的 QT 創作者項目

我們將在這里為我們的項目選擇一個模板。 單擊 Project 面板中的 Application 選項 temp 並選擇 Qt Widgets Application 作為模板。 該模板為桌面創建了一個 Qt 應用程序。 它包括一個基於 Qt 設計器的主窗口。 做出選擇後點擊選擇按鈕; 這將打開以下 Qt Widgets Application 視圖:

項目地點

Enter Qt 項目的名稱並指定要創建它的位置。 然後點擊下一步; 它將打開以下視圖供您進行套件選擇:

套件選擇

確保選擇桌面作為套件,然後單擊下一步。 然後,您將看到類信息,如下所示:

班級信息

當然,您可以根據自己的意願更改類名,但是對於您的第一個 Qt 程序,我們更喜歡您使用默認文件名。 單擊下一步,您將看到以下項目管理詳細信息:

項目管理

單擊完成按鈕,您就可以開始處理您的第一個 Qt 項目了。

默認情況下,Qt Creator 將打開您的 mainwindow.cpp 文件。 單擊最左側面板中顯示的項目層次結構中的 main.cpp 文件。 在 main.cpp 文件中,將現有代碼替換為以下代碼:

#include #include #include int main(int argc, char *argv[ ]) { QApplication app(argc, argv); QLabel hello(“

歡迎使用我的第一個 Qt 程序
“); hello.setWindowTitle(“我的第一個 Qt 程序”); hello.resize(400, 400); hello.show(); 返回 app.exec(); }

這是您的項目窗口的外觀:

QT Creator 中的源代碼

Save 使用 Ctrl+S 快捷方式或通過選擇文件 Save 從文件菜單。

最後,使用 Ctrl+R 快捷鍵或從 Build 菜單中選擇 Run 來運行項目。

您的程序將被編譯並運行,您將能夠看到以下輸出:

運行項目

帶有我們指定標題和標籤的窗口!

所以,這就是編寫、編譯和運行第一個 Qt 程序所需的全部知識。 您可以根據您的項目需求和個人喜好選擇命令行方式還是UI方式更適合您。