Ubuntu18下一直飛凌的QT4.8.5
阿新 • • 發佈:2020-09-15
首先,1 把飛凌的QT4.8.5_sdk和tslib1.41_sdk,和對應的交叉編譯鏈,解壓到/usr/local/arm/OK335XD
2 在qt_creator中設定編譯器和qt版本和kit。
在設定qt版本的時候,如果提示"qt沒有被正確的安裝,請執行make install",可能是之前安裝過對應的qt,導致路徑不對。
原因為是因為編譯出來的qmake.exe中內嵌了一個路徑,所以如果路徑和能成功配置好qmake的電腦上的路徑保持一致的話,就不會報這種錯。 但如果不知道那個路徑,怎麼辦呢?可用16進位制編譯器,開啟qmake.exe檔案,搜尋 71 74 5f 70 72 66 78 70 6174 68 3d (qt_prexpath=) 就能看到路徑。 有一個更簡單的方法即可解決: 在qmake.exe同一資料夾下,建立一個qt.conf檔案(ANSI格式) [paths] Prefix = .. 1 2 windows下記事本在另存為的時候可以選擇編碼格式為ANSI
3 配置完後,看著沒有問題了。嘗試編譯,有報錯
error while loading shared libraries: libz.so.1: cannot open shared object file
error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory 這個問題就是你64位的作業系統沒有32位的類庫,而android的SDK是要32位支援的,如果沒裝就只能是報上面的錯! 解決: # sudo apt-get update # sudo apt-get install lib32z1 這時候編譯:arm-none-linux-gnueabi-gcc hook.c 通過
4 再編譯發現還有關於找不到編譯器和tslib的,則需要重新修改
/usr/local/arm/OK335XD/qt4.8.5-sdk/qt4.8.5/mkspecs/qws/linux-arm-g++下的qmake.conf
# # qmake configuration for building with arm-linux-g++ # include(../../common/linux.conf) include(../../common/gcc-base-unix.conf) include(../../common/g++-unix.conf) include(../../common/qws.conf) # modifications to g++.conf QMAKE_CC = arm-arago-linux-gnueabi-gcc -lts QMAKE_CXX = arm-arago-linux-gnueabi-g++ -lts QMAKE_LINK = arm-arago-linux-gnueabi-g++ -lts QMAKE_LINK_SHLIB = arm-arago-linux-gnueabi-g++ -lts # modifications to linux.conf QMAKE_AR = arm-arago-linux-gnueabi-ar cqs QMAKE_OBJCOPY = arm-arago-linux-gnueabi-objcopy QMAKE_STRIP = arm-arago-linux-gnueabi-strip QMAKE_INCDIR += /usr/local/arm/OK335XD/tslib-sdk/tslib/include QMAKE_LIBDIR += /usr/local/arm/OK335XD/tslib-sdk/tslib/lib
應該可以了