海思3519av100芯片開發相關2-交叉編譯qt4.8.7版本.

前言

這裏我也是第一次編譯.遇到了很多問題. 最後才成功.
參考別人的文檔.這裏列出來.

前置條件

安裝好需要編譯的交叉編譯器
我的linux是ubuntu16.0.4版本.

全部編譯過程

1. 下載qt4.8.7源碼.這沒什麼好說的.
2. 源碼解壓,設置交叉編譯qt源碼時用到的交叉編譯環境

  1. 進入解壓後的源碼目錄,進入mkspecs/qws目錄.新建文件夾,用來設置自己的交叉編譯環境,我的是:linux-himix200-g++文件夾.
  2. 複製linux-arm-g+=裏的兩個文件.到自己的交叉編譯環境文件夾
  3. 更改自己的交叉編譯環境文件夾裏的qmake.conf文件.將用到的編譯工具.替換爲自己的.我的替換後如下圖qmake.conf更改後的樣子
    增加qplatformdefs.h:vi qplatformdefs.h ------->#undef O_CLOEXEC(此處主要爲解決:編譯過程中找不到accept4函數問題.沒問題先不加)

5. 安裝x11庫:sudo apt-get install libx11-dev libxext-dev libxtst-dev
這步不能省

6. configure
先給出我用的命令.然後解釋關鍵地方

./configure --prefix=/opt/qt4.8.7 -opensource -confirm-license -qt-sql-sqlite -qt-gfx-linuxfb -plugin-sql-sqlit -no-qt3support -no-phonon -no-svg -no-webkit -no-javascript-jit -no-script -no-scripttools -no-declarative -no-declarative-debug -qt-zlib -no-gif -qt-libtiff -qt-libpng -no-libmng -qt-libjpeg -no-rpath -no-pch -no-3dnow -no-avx -no-neon -no-openssl -no-nis -no-cups -no-dbus -embedded arm -platform linux-g++ -xplatform qws/linux-himix200-g++ -little-endian -qt-freetype -no-opengl -no-glib -nomake demos -nomake examples -nomake docs -nomake tools

首先.這個命令是粘貼進這個博客. 可能會自動添加一些換行符.如果有人直接複製命令.記得檢查複製的結果.是不是有些本不該有的空格啊回車啊.’
解釋:
prefix設置的是qt的安裝目錄.換成自己的 這個是無所謂,自己方便用就行
-xplatform qws/linux-himix200-g++ 指定交叉編譯環境
就是我們上編譯環境的路徑

7. configure
make
然後
make install
等待編譯完成…

第七步遇到的問題 :make時因爲 itewviews的不明原因中斷,往上翻翻,找到error記錄
在這裏插入圖片描述

在其他博客裏找打解決方案 按照圖示內容修改代碼,注意別寫錯了,然後成功編譯在這裏插入圖片描述

到這裏你得到交叉編譯qt.但是,還不能用.
8. PC編譯

  1.  重新解壓qt-everywhere-opensource-src-4.8.6.tar.gz,進行PC編譯
    
  2.  ./ configure
    
  3.  make 
    
  4.  make install
    

得到pc版本.

9. 安裝qtcreator 配置交叉編譯qt4.8.7

(如果你不想用qtcreator 嗯…)

  1. 安裝 qt-creator-opensource-linux-xxxxxxx.run
    xxx表示不同的qtcreator 版本啊處理器位數等等…用xxx代替.表示
    然後可以在應用程序裏找到qtcreator

  2. 從PC的QT安裝目錄中拷貝如下文件到交叉編譯目錄
    cp /usr/local/Trolltech/Qt-4.8.7/bin/qml* /opt/qt4.8.7/bin/
    注意路徑換成自己的

  3. 打開QT Creator
    打開 工具-選項,我的是在Kit裏.添加QT_VERSION.添加你要用的qmake.
    在編譯器欄目裏,添加用海思編譯器 等等.
    然後
    然後添加Kit .device type 就選generic linux device… 編譯器 qt版本.選擇交叉編譯要用的就行.這裏附配置截圖一張
    在這裏插入圖片描述
    .

到這,配置就結束了…

如果有報錯…但是始終找不到原因…建議 重新解壓後從頭操作.防止錯誤累加.耽誤時間

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章