該章節用到的文件可以在網盤的“iTOP4412 開發板資料匯總(不含光盤內容)\iTOP- 4412 開發板系統源碼及鏡像(其他)\QtE5.7 移植資料\iTOP-4412-QtE-移植 QtE5.7 系 統.zip”文件中找到。 7.2.3.1 編譯器版本 編譯 QtE5.7 用到的編譯器是: “arm-2014.05-29-arm-none-linux-gnueabi-i686-pc-linux-gnu.tar.bz2” 將編譯器拷貝到“/usr/local/arm”目錄下,并解壓。 使用命令“cd”(一定要使用 root 賬戶),接著使用“vim .bashrc”命令,打開環境 變量配置文件。修改環境變量配置文件最底行(取消注釋),如下圖所示。 ![]() 接著還需要更新一下環境變量,如下圖所示,使用命令“source .bashrc”。 ![]() 最后做一下環境變量測試。 重啟下控制臺后,在 Ubuntu 控制臺中輸入“arm-none-linux-gnueabi-gcc -v”,然 后回車,會出現如下圖所示內容。 ![]() 7.2.3.2 編譯觸摸 解壓源碼 tslib-1.4.tar.gz,然后執行如下命令。 cd tslib ./autogen.sh ./configure CC=arm-none-linux-gnueabi-gcc CXX=arm-none-linux-gnueabi-g++ --host=arm-none-linux-gnueabi -- prefix=/opt/tslib1.4 ac_cv_func_malloc_0_nonnull=yes make make install vim /opt/tslib1.4/etc/ts.conf 修改第二行如下 ![]() 保存,退出。 7.2.3.3 編譯 QtE5.7 鏡像 使用“tar -vxf qt-everywhere-opensource-src-5.7.0”命令解壓 QtE5.7 源碼,并進 入解壓生成的“qt-everywhere-opensource-src-5.7.0”目錄。 ![]() 在“qt-everywhere-opensource-src-5.7.0”目錄下,使用 “ vi qtbase/mkspecs/linux-arm-gnueabi-g++/qmake.conf ”命令,打開 qmake.conf 文件,并修改為如下所示內容,如下圖所示,紅色字體為添加或者修改的部分。 # # qmake configuration for building with arm-linux-gnueabi-g++ # MAKEFILE_GENERATOR = UNIX CONFIG += incremental QMAKE_INCREMENTAL_STYLE = sublib QT_QPA_DEFAULT_PLATFORM = linux #eglfs QMAKE_CFLAGS_RELEASE += -O2 -march=armv7-a QMAKE_CXXFLAGS_RELEASE += -O2 -march=armv7-a include(../common/linux.conf) include(../common/gcc-base-unix.conf)include(../common/g++-unix.conf) # modifications to g++.conf QMAKE_CC = arm-none-linux-gnueabi-gcc QMAKE_CXX = arm-none-linux-gnueabi-g++ QMAKE_LINK = arm-none-linux-gnueabi-g++ QMAKE_LINK_SHLIB = arm-none-linux-gnueabi-g++ # modifications to linux.conf QMAKE_AR = arm-none-linux-gnueabi-ar cqs QMAKE_OBJCOPY = arm-none-linux-gnueabi-objcopy QMAKE_NM = arm-none-linux-gnueabi-nm -P QMAKE_STRIP = arm-none-linux-gnueabi-strip load(qt_config) 保存,退出。 使用“vi autoconfigure.sh”命令,新建“autoconfigure.sh”腳本。腳本內容如下所示。 #!/bin/sh ./configure \ -v \ -prefix /opt/qt5.7.0 \ -release \ -opensource \ -make libs \ -xplatform linux-arm-gnueabi-g++ \ -optimized-qmake \ -pch \ -qt-sql-sqlite \ -qt-libjpeg \ -qt-zlib \ -no-opengl \ -skip qt3d \ -skip qtcanvas3d \ -skip qtpurchasing \ -no-sse2 \ -no-openssl \ -no-nis \ -no-cups \ -no-glib \ -no-iconv \ -nomake examples \ -nomake tools \ -skip qtvirtualkeyboard \ -I/opt/tslib1.4/include \ -L/opt/tslib1.4/lib exit 保存腳本,退出。使用命令“chmod 777 autoconfigure.sh”修改腳本權限,然后使用 命令“./autoconfigure.sh”執行腳本,會有版本認證,如下圖。 輸入“yes”即可。 接著使用編譯命令“make”,之后使用安裝命令“make install”。完成后,可以在 “/opt”目錄下可以查看到生成的“qt5.7.0”文件,如下圖所示。 ![]() 在下一小節的打包過程中,會用到該文件。 |