本章為大家介紹 Qtopia2.2.0,它是帶桌面系統的 QT 的最終版本,雖然技術上不是最新的,但它仍有很大的現實意義,畢竟目前最新的 QT 技術只提供了圖形庫,沒有像 Qtopia 這樣有著友好的桌面系統。下一章我們會給大家介紹 QTE(即 QT 的嵌入式版本),包括 4.7 和5.7 兩個版本,通過對比學習,相信會增強大家對 QT 系統整體認識和理解,而且在工作中也常會遇到這些不同版本之上的開發。 搭建 Qtopia2.2.0 開發環境,需要先搭建 Android 的編譯環境,然后在 Android 編譯環境的基礎上,再搭建 Qtopia2.2.0 編譯環境。 Qtopia2.2.0 的編譯環境看似復雜,用戶只要抓住幾個要點就可以了。 第一:編譯器。編譯器在光盤中有提供,在接下來的教程的編譯步驟中,將說明其在光盤中的位置。 第二:設置環境變量。只有在環境變量設置后,當我們編譯系統的時候,系統才能找到編譯器。 第三:庫文件。我們將在搭建過程中,通過執行簡單的腳本命令來安裝庫文件,這樣就使得復雜的步驟變的簡單有效。 第四:源碼。官網下載的 Qtopia2.2.0 的源文件有少量的 Bug,經過迅為工程師的修改已經可以直接使用,因此這一步可以直接跳過。 如果用戶是使用“搭建好的 Ubuntu 鏡像”,則只需要修改一下環境變量,系統里面的工具和庫文件都已經安裝完畢了。 13.2.2 uboot 的編譯 Qtopia2.2.0 系統中的 Uboot 和 Android4.0.3 的 Uboot 源碼,編譯器,參數配置,編譯過程都是通用的,參考 7.3.1 小節。 13.2.3 Linux 內核的編譯 Qtopia2.2.0 系統中 Linux 內核和 Android4.0.3 中的 Linux 內核源碼是一樣的,編譯環境和編譯方法也一樣,參考 7.3.2 小節。 13.2.4 參數配置 Qtopia2.2.0 文件系統對應的內核、源碼以及編譯環境都和 Android4.0.3 的內核一樣。區別在于‘配置文件’不一樣。 內核的編譯是組合式配置文件,基本的配置文件名是“config_for_linux_YY_elite”,YY表示用下表所示的參數替代。 13.2.5 編譯生成內核鏡像舉例 這里以 SCP 1G 核心板為例編譯 zImage 內核鏡像,那么配置文件為 “config_for_linux_scp_elite”。 將光盤“06_源碼_uboot 和 kernel”目錄下的壓縮包 “iTop4412_Kernel_3.0_xxx.tar.gz”拷貝到 Ubuntu,然后解壓,得到文件夾 “iTop4412_Kernel_3.0 ”,如下圖所示。 進入文件夾“iTop4412_Kernel_3.0 ”,使用命令 “cp config_for_linux_scp_elite .config”覆蓋自帶的配置文件,如下圖所示。 如果用戶要使用 5 寸屏幕,先要參考用戶手冊“5.5 支持 5 寸屏的內核補丁文件”,給內核打補丁,然后使用命令“vim .config”,在文件中搜索關鍵詞 “CONFIG_TOUCHSCREEN_GT9XX=y”,在“CONFIG_TOUCHSCREEN_GT9XX=y”之后添加一行“CONFIG_TOPEET_LCD5X0=y”,添加完成之后,如下圖所示。如果用戶不使 用 5 寸屏幕,則可以跳過這一步。 最后使用編譯命令“make zImage”,如下圖所示。 編譯中,如下圖所示。 編譯完成,如下圖所示。 文件夾“iTop4412_Kernel_3.0 ”下的“arch”-->“arm”-->“boot”會生成鏡像文件“zImage”,這個 zImage 鏡像可以給 SCP 1G 和 SCP 2G 的核心板使用,如下圖所示。 迅為4412開發板更多學習內容:嗶哩嗶哩搜索 |