国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Qt5開發(fā)環(huán)境-銀河麒麟V10ARM平臺

這篇具有很好參考價值的文章主要介紹了Qt5開發(fā)環(huán)境-銀河麒麟V10ARM平臺。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

近期因參與開發(fā)的某個軟件需要適配銀河麒麟v10arm 平臺,于是自己搭建起一套Qt 開發(fā)環(huán)境,在此記錄下具體過程,以供有需要的朋友參考。一開始手上并沒有Arm架構(gòu)的PC,先在Windows下用Vs2017和QtCreator 開發(fā),軟件開發(fā)快結(jié)束的時候Arm PC到了。Qt 沒有提供可直接安裝的arm架構(gòu)安裝包,只能自己通過編譯Qt 來搭建開發(fā)環(huán)境。

1.源碼下載

下載Qt5.12.7,從這里下載Qt5.12.7 。一定要選擇后綴為.tar.xz的源碼包,zip源碼包親測編譯時會遇到奇怪的問題。
Qt5開發(fā)環(huán)境-銀河麒麟V10ARM平臺,C++,qt,c++,開發(fā)環(huán)境

2.編譯安裝

2.1 安裝依賴
  • 安裝OpenGL依賴
    sudo apt-get install build-essential
    sudo apt-get install libgl1-mesa-dev
    sudo apt-get install libglu1-mesa-dev
    sudo apt-get install libegl1-mesa-dev
    sudo apt-get install freeglut3-dev
2.2 編譯

打開終端,cd到源碼所在目錄,執(zhí)行configure程序并make,這里以編譯release版本為例

./configure -prefix  /opt/qt5.12.7  -opensource  -release  -nomake tests -skip qtvirtualkeyboard 

 接著執(zhí)行make 命令
 make -j4
2.3 遇到的問題

編譯過程遇到了一些問題,記錄如下
1)問題一

/usr/bin/ld.gold:錯誤:cannot find -lclip2tri
/usr/bin/ld.gold:錯誤:cannot find -lpoly2tri
/usr/bin/ld.gold:錯誤:cannot find -lclipper

該問題的原因是qtlocation模塊未編譯完整,重新執(zhí)行 make -j4 module-qtlocation 命令 可消除此錯誤,也可以在執(zhí)行configure命令的時候添加 -skip qtlocation 來跳過編譯。
2)問題二
xcb-xfixes development package not found
這個問題的解決方式是安裝對應的軟件包,執(zhí)行下面的命令來安裝,安裝之后重新執(zhí)行 make -j4。

sudo apt-get install libxcb-util0-dev
2.4 安裝

除此之外還有其他一些小問題,根據(jù)錯誤提示就能解決,沒記錄下來。
make 結(jié)束之后,執(zhí)行 sudo make install 命令,會將編譯好的Qt開發(fā)環(huán)境安裝到之前設(shè)置的目錄下 /opt/qt5.12.7 。

3.編譯qtwebengine

qtwebengine是后期需要引入echarts時才編譯的,編譯過程中也遇到了一些奇怪的問題,特在此記錄下來備忘。qtwebengine需要用到qmake及Qt的一些核心庫,因此必須先確保第3節(jié)中的qt編譯完成。

3.1 安裝依賴庫
sudo apt-get install bison build-essential gperf flex libasound2-dev\
libcups2-dev libdrm-dev libegl1-mesa-dev libnss3-dev libpci-dev\
libpulse-dev libudev-dev nodejs libxtst-dev gyp ninja-build\
libssl-dev libxcursor-dev libxcomposite-dev libxrandr-dev

在安裝 libnss3-dev 時報錯,大概意思是版本不對,使用sudo apt-get install libnss3-dev = xxxversion ,安裝成功。錯誤如下:

ibnss3-dev : 依賴: libnss3 (= 2:3.49.1-1kylin1.5) 但是 2:3.49.1-1kylin1.6 正要被安裝

解決方法,安裝指定版本的依賴包:
sudo apt-get install libnss3=2:3.49.1-1kylin1.5

3.2 編譯

打開終端, cd 到 src/qtwebengine 目錄下,執(zhí)行命令:

../qtbase/bin/qmake qtwebengine.pro
3.3 遇到的問題
  • gperf not found

執(zhí)行完qmake 命令后報錯:gperf not found,以為gperf 沒有安裝成功,再次使用apt-get 安裝缺少的依賴,sudo apt-get install gperf ,安裝完成后需要將configure命令生成的緩存清除掉然后重新執(zhí)行configure 命令,并再次執(zhí)行qmake,命令如下:

rm config.cache
./configure -prefix  /opt/qt5.12.7  -opensource  -release  -nomake tests -skip qtvirtualkeyboard 
../qtbase/bin/qmake qtwebengine.pro
make -j4
  • X11/Xlib-xcb.h 找不到
    不出意外開始編譯了,經(jīng)過漫長的等待,編譯又出錯了,這次遇到的是:fatal error X11/Xlib-xcb.h 文件不存在。第一感覺是缺少對應的庫,經(jīng)過一番查找發(fā)現(xiàn)需要安裝 libx11-dev ,于是執(zhí)行 sudo apt-get install libx11-dev,成功安裝后仍然報錯。通過find命令查找該頭文件,確實沒有找到 find /usr -name Xlib-xcb.h 。 我耐著性子查詢了很多資料還是沒能解決問題,這時只剩下最后一條路了,那就是下載libx11-dev源碼,從libx11地址下載系統(tǒng)libX11版本對應的libx11-dev源碼后,與當前系統(tǒng)/usr/lib/include/X11 目錄進行比較發(fā)現(xiàn)系統(tǒng)重確實少了Xlib-xcb.h 文件,而下載的源碼中剛好有這個文件,于是將 Xlib-xcb.h 復制到 /usr/lib/include/X11 目錄下,重新執(zhí)行 make -j4 繼續(xù)編譯。
  • libXlib-xcb.so 找不到
    又是漫長的等待過后報了一個錯,這次是 libXlib-xcb.so 找不到,通過find命令發(fā)現(xiàn)在 /usr/lib/arm-linux-gnueabihf/ 目錄下有這個庫,根據(jù)報錯信息提示在/usr/lib/aarch64-linux-gnu/ 目錄下創(chuàng)建了一個 軟連接 ln -s /usr/lib/arm-linux-gnueabihf/libXlib-xcb.so libXlib-xcb.so, 接著再次執(zhí)行make -j4 ,這次沒有提示libXlib-xcb.so 找不到,而是提示libXlib-xcb.so 不兼容。
  • libXlib-xcb.so 不兼容
    針對這個問題,我打算重新編譯libXlib 庫。首先安裝libtool 和 autoconfig
sudo apt-get install libtool autoconf

切換到libXlib 源碼根目錄下 執(zhí)行

 ./autogen.sh
 configure.ac:24: error: must install xorg-macros 1.15 or later before running autoconf/autogen

下載對應的 rpm 安裝包,下載地址

sudo rpm -ivh xorg-x11-util-macros-1.19.3-4.el9.noarch.rpm --nodeps --force

安裝后再次執(zhí)行

./autogen.sh
make 

編譯結(jié)束后會生成libXlib-xcb.so ,把庫拷貝到/usr/lib 目錄下, 刪除之前創(chuàng)建的 /uar/lib/aarch64-linux-gnu 目錄下的軟連接,重新創(chuàng)建對應的軟連接,然后回到qtwebengine 根目錄下再次 執(zhí)行 make -j4

  • open CFI at the end of file; missing .cfi_endproc directive
    這個問題是qtwebengine 編譯過程中由于占用內(nèi)存太多,而系統(tǒng)內(nèi)存不足導致的報錯。我用的設(shè)備內(nèi)存是8G,交換空間是9G,為了解決這個問題將交換空間增加了20G,最終才編譯成功。

以下是增加交換空間用到的幾個命令:

#創(chuàng)建swap文件
mkdir -p /var/cache/swap
sudo dd if=/dev/zero of=/var/cache/swap/swap0 bs=1G count=20
#轉(zhuǎn)換swap文件
sudo mkswap -f /var/cache/swap/swap0
#激活swap文件
sudo swapon /var/cache/swap/swap0
#卸載
sudo swapoff /var/cache/swap/swap0
#永久生效
sudo vim /etc/fstab
#寫入以下內(nèi)容:
/var/cache/swap/swap0 none swap defaults 0 0

再次執(zhí)行make -j4這次成功生成了 libQt5WebEngine 等幾個qtwebengine 用到的庫。

3.4 安裝

在qtwebengine 根目錄下執(zhí)行sudo make install ,生成的庫會自動安裝到/opt/qt5.12.7目錄下。

4.配置開發(fā)環(huán)境

首先在軟件商店中下載并安裝QtCreator,安裝完成之后配置QtVersion 、編譯器、Kits等。可以參考這篇文章配置鏈接

5.測試

新建一個項目,運行測試。這里遇到一個問題,程序可正常編譯運行,但是源碼文件確報錯 unexpected class name,這是因為缺少一個軟件包,通過安裝這個軟件包解決了此問題,安裝命令如下:

sudo apt-get install libclang-common-8-dev

安裝完成后重啟QtCreater,不會再出現(xiàn)上面的問題了。

6.程序無法輸入中文的問題

經(jīng)過查詢發(fā)現(xiàn)是插件問題,自己編譯的qt開發(fā)環(huán)境中缺少插件 libfcitxplatforminputcontextplugin.so,這里有兩個辦法解決這個問題,一個是下載源碼自己編譯該插件,另一個是在系統(tǒng)中找到這個插件,并拷貝到對應的插件目錄中。這里采用第二種方式解決了該問題,如果第二種方式不能解決,那就嘗試用第一種方式自己編譯插件吧。

總結(jié)

從零開始搭建麒麟系統(tǒng)arm平臺下的Qt開發(fā)環(huán)境還是挺折磨人的,在這個過程中會遇到很多新的問題,只有自己動手實踐一遍才能真正體會。我把完整的qt環(huán)境上傳到git上了,如果你也剛好需要而又不想折騰的話可以直接下載使用。下載地址:https://download.csdn.net/download/zheng19880607/88241689
以上就是本篇的所有內(nèi)容了,歡迎評論區(qū)留言討論!??!文章來源地址http://www.zghlxwxcb.cn/news/detail-650792.html

到了這里,關(guān)于Qt5開發(fā)環(huán)境-銀河麒麟V10ARM平臺的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • 銀河麒麟服務器v10版本在arm架構(gòu)下安裝配置onlyoffice

    安裝 onlyoffice 環(huán)境信息 操作系統(tǒng)版本:Kylin Linux Advanced Server V10 (Lance) cpu架構(gòu):aarch64 onlyoffice版本:onlyoffice-documentserver-7.5.1-23.el7.aarch64 閱讀擴展:因為kylin本身的yum源資源有限,需要一些擴展包時經(jīng)常找不到,我參照centos7(查看內(nèi)核版本及dnf可能更接近centos8)進行擴展安裝

    2024年01月16日
    瀏覽(33)
  • ARM架構(gòu)下銀河麒麟V10系統(tǒng)基于CUDA11.8編譯PyTorch

    公司近期想嘗試本地用下ChatGLM模型,只有服務器安裝了兩張顯卡,故而只能在服務器做嘗試。CUDA驅(qū)動啥的,之前的同事已經(jīng)安裝完畢,并且成功識別出顯卡,顧略去。按照GIT README步驟開搞,一切順利,最后在運行腳本的時候收到如下提示 因為服務器是ARM的(CPU是Phytium ST250

    2024年02月14日
    瀏覽(171)
  • 銀河麒麟v10x86或者arm離線安裝服務

    銀河麒麟v10x86或者arm離線安裝服務

    最近有個項目,甲方的服務器用的全是國產(chǎn)化服務器銀河麒麟,架構(gòu)是x86的然后也無法連接外網(wǎng),需要離線安裝服務 正常思路就是找到離線安裝的包,然后拷貝到現(xiàn)場的服務器中進行安裝 所以問題就在于如何找到離線安裝的包 我這次是需要安裝離線nginx,keepalived 首先就是需

    2024年02月08日
    瀏覽(40)
  • qemu+kvm安裝銀河麒麟V10SP1 arm64 虛擬機

    qemu+kvm安裝銀河麒麟V10SP1 arm64 虛擬機

    系統(tǒng)鏡像 Kylin-Desktop-V10-SP1-Release-2107-arm64.iso QEMU_EFI.fd(下載地址 http://releases.linaro.org/components/kernel/uefi-linaro/16.02/release/qemu64/QEMU_EFI.fd) 注:麒麟系統(tǒng)要求磁盤大小在50G以上. 參數(shù)說明: -m 4096 指定內(nèi)存大小,單位MB -cpu cortex-a72 CPU 型號 -smp 8,cores=8,threads=1,sockets=1 1顆CPU,8核8線

    2024年01月21日
    瀏覽(34)
  • 銀河麒麟V10配置java和maven環(huán)境

    銀河麒麟V10配置java和maven環(huán)境

    配置java環(huán)境 架構(gòu)為 intel 系統(tǒng)自帶 如果開發(fā)java應用,經(jīng)常需要配置JAVA_HOME路徑,如果是通過yum安裝的jdk(一般系統(tǒng)會自帶open-jdk), 需要定位JDK安裝路徑 至此,確定java的安裝目錄為: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.xx.x86_64 自己安裝 安裝 openjdk1.8 ,Oracle JDK由Oracle Corporation完全

    2024年02月04日
    瀏覽(16)
  • 銀河麒麟v10安裝前端環(huán)境(Node、vue、Electron+vite)

    銀河麒麟v10安裝前端環(huán)境(Node、vue、Electron+vite)

    此帖子所提到的所有依賴包都是基于銀河麒麟v10真機的arm架構(gòu)包,如果是在windows上的虛擬機上 把依賴包換成x64的包即可,方法步驟都是一樣 一.node安裝 原始方法安裝(建議用第二種nvm方法,因為更簡單): 1.1nodejs官網(wǎng)下載基于arm架構(gòu)的包 1.1.1或者打開終端使用wget方式安裝

    2024年02月02日
    瀏覽(51)
  • Qt5.12.6配置Android Arm開發(fā)環(huán)境(Linux)

    Qt5.12.6配置Android Arm開發(fā)環(huán)境(Linux)

    1.安裝jdk 2.安裝android studio 3.安裝sdk 與ndk? 設(shè)置代理 ?安裝SDK工具 ?安裝SDK Platform 安裝QT? ?選擇JDK 1.8安裝路徑,SDK與NDK路徑 ?如出現(xiàn)Platform SDK或者Platform Build Tools未安裝,點擊Update Installed ?配置成功后可看到ARMv7與AMD-v8a kits Qt Version也可看到ARMv7與AMD-v8a? ?如果 有安裝了CMake,也

    2024年01月21日
    瀏覽(35)
  • 【Ambari】銀河麒麟V10 ARM64架構(gòu)_安裝Ambari2.7.6&HDP3.3.1(HiDataPlus)

    【Ambari】銀河麒麟V10 ARM64架構(gòu)_安裝Ambari2.7.6&HDP3.3.1(HiDataPlus)

    ?? 個人主頁——??開著拖拉機回家_Linux,Java基礎(chǔ)學習,大數(shù)據(jù)運維-CSDN博客 ????? 感謝點贊和關(guān)注 ,每天進步一點點!加油! ???????????????? ?????????????? ???????????????????????? 目錄 一、版本信息 二、HiDataPlus介紹 2.1 Apache Components 2.2 Amba

    2024年02月07日
    瀏覽(19)
  • ubuntu虛擬機安裝Qt5 for ARM交叉開發(fā)環(huán)境

    ubuntu虛擬機安裝Qt5 for ARM交叉開發(fā)環(huán)境

    提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 本文講述了在虛擬機中安裝 Qt 交叉開發(fā)環(huán)境詳細過程。以便在虛擬機中進行 Qt 應用程序的開發(fā),處理觸摸屏的部分會在下一篇文章中敘述。 我們的虛擬機為ubuntu18.04。 sudo apt-get install qt5-default 指令會安

    2024年02月09日
    瀏覽(50)
  • 【Linux】銀河麒麟V10 ARM架構(gòu)_安裝JDK8-kylinV10(Kylin Linux Advanced Server V10 )操作系統(tǒng)(CentOS8)

    【Linux】銀河麒麟V10 ARM架構(gòu)_安裝JDK8-kylinV10(Kylin Linux Advanced Server V10 )操作系統(tǒng)(CentOS8)

    ?? 個人主頁——??開著拖拉機回家_大數(shù)據(jù)運維-CSDN博客 ????? ???? 希望本文能夠給您帶來一定的幫助??文章粗淺,敬請批評指正!???? ???????????????? ?????????????? ???????????????????????? ?????????????? 感謝點贊和關(guān)注 ,每天

    2024年02月05日
    瀏覽(38)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包