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

銀河麒麟V10 SP1 ARM編譯QT源代碼

這篇具有很好參考價值的文章主要介紹了銀河麒麟V10 SP1 ARM編譯QT源代碼。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

最近因?yàn)橐恍┦虑樾枰阢y河麒麟ARM系統(tǒng)上[銀河麒麟V10 SP1 ARM 2203 linux5.4.96-11]安裝QT5.12.4版本,由于QT官方不提供ARM版的安裝包,無奈只能自己手動編譯源代碼。

后續(xù)補(bǔ)充:實(shí)際上我要裝的是Qt5.14.2 而不是 5.12.4,不過同樣的環(huán)境下Qt5.14.2也編譯成功了。


這是一篇個人筆記,對這段時間的工作進(jìn)行總結(jié),如果能幫到各位那再好不過。鄙人才疏學(xué)淺,大佬輕噴。
建議和官方文檔一起閱讀。
Qt-5構(gòu)建文檔
QtWebEngine/How_to_Try
QtWebEngine Platform Notes


構(gòu)建

代碼路徑千萬不要有中文
建議閱讀完 依賴安裝以及報錯 再開始構(gòu)建

執(zhí)行命令之前先安裝這個,在文檔中有說明

官方構(gòu)建文檔

sudo apt-get install build-essential libgl1-mesa-dev

確認(rèn)是否構(gòu)建QTWebEngine

如果跳過的話,執(zhí)行這段命令。后面執(zhí)行make大概在1小時左右(麒麟海思芯片9006c)。

# 路徑換成你自己的
./configure -skip webengine --prefix=/home/johnson/Qt5.12.4/

如果選擇構(gòu)建web引擎。時間會很漫長。原因是因?yàn)閏hromium編譯很吃內(nèi)存,swap分區(qū)的速度比內(nèi)存還是慢很多的。

# -webengine-proprietary-codecs: 啟用對專有編解碼器的支持,支持chromium,可以播放視頻
./configure \
	--prefix /home/johnson/Qt5.12.4 \
	-opensource \
	-confirm-license \
	-nomake examples \
	-nomake tests \
	-release \
	-webengine-proprietary-codecs \
	--pcre=qt

開始構(gòu)建

nproc是獲取CPU的線程數(shù),可以多線程構(gòu)建;如果你還要用電腦干其他活,可以少給幾個線程,比如make -j4。

sudo make -j$(nproc)
sudo make install

依賴安裝以及報錯

特殊情況

有幾個需要說明的,不知道是我這個機(jī)子的問題還是什么。

  1. 推薦使用 apt-get 而不是 apt,貌似有的依賴包用 apt install 找不到

  2. 我這個系統(tǒng)的 /etc/apt 目錄下的sources.list總是莫名其妙自己變成下面這段(有可能是系統(tǒng)沒激活的原因),導(dǎo)致apt-get update更新不了,而且找不到依賴。如果你的機(jī)子也有這種問題,在后面 apt-get 找不到依賴的時候可以看看sources.list是不是變了。

# 本文件由源管理器管理,會定期檢測與修復(fù),請勿修改本文件
deb https://archive.kylinos.cn/kylin/KYLIN-ALL 10.1-wayland-2203-fix-disk main

實(shí)際上在系統(tǒng)重裝開機(jī)過后是這個,備份一下sources.list,然后 chmod 444 sources.list 設(shè)置為只讀。當(dāng)然了,我的系統(tǒng)架構(gòu)和版本和你們都不一定一樣,sources.list也有所區(qū)別。

deb https://archive.kylinos.cn/kylin/KYLIN-ALL/ 10.1-wayland-2203-updates main universe restricted multiverse
deb https://archive.kylinos.cn/kylin/KYLIN-ALL/ 10.1-kirin9006C-feature main
deb https://archive2.kylinos.cn/deb/kylin/production/PART-10_1-kirin9a0/custom/partner/10_1-kirin9a0 default all

依賴安裝

我從官方文檔以及查閱各種資源總結(jié)的依賴

官方要求

銀河麒麟V10 SP1 ARM編譯QT源代碼,arm開發(fā),qt,kylin

總結(jié)合并
  1. 其中 libsrtp0-dev 這個依賴在我平臺上升級為了 libsrtp2-dev
sudo apt-get install bison build-essential gperf flex python2 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 libxdamage-dev libxrandr-dev libfontconfig1-dev libxss-dev \
'libsrtp0-dev' libwebp-dev libjsoncpp-dev libopus-dev libminizip-dev libavutil-dev \
libavformat-dev libavcodec-dev libevent-dev libvpx-dev libsnappy-dev libre2-dev \
libprotobuf-dev protobuf-compiler gcc g++ libssl-dev libxcursor-dev libxcomposite-dev \
libxrandr-dev libdbus-1-dev ffmpeg libavutil-dev libavformat-dev libavcodec-dev libevent-dev \
libxcb-xfixes0-dev xcb libxcb-xkb-dev x11-xkb-utils libx11-xcb-dev libxkbcommon-x11-dev \
libfontconfig1-dev xorg-dev libclipper-dev
  1. 如果要構(gòu)建Qt docs的話
sudo apt-get install libclang-dev llvm
  1. 如果要使用相機(jī)需要安裝gstreamer
sudo apt-get install libgstreamer1.0-0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good \
	gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-libav gstreamer1.0-doc 1.0-tools
  1. 有些模塊需要依賴官網(wǎng)都找不到,比如相機(jī)那部分坑了我好久,后來才發(fā)現(xiàn)是少了依賴所以產(chǎn)物沒有構(gòu)建出來,具體缺少了什么模塊的依賴還得自己去找了

報錯

  1. 在執(zhí)行make install期間鏈接庫報錯。

/usr/bin/ld.gold: error: cannot find -lclip2tri
/usr/bin/ld.gold: error: cannot find -lpoly2tri
/usr/bin/ld.gold: error: cannot find -lclipper
.obj/qgeopath.o:qgeopath.cpp:function QGeoPathPrivate::polygonContains(QGeoCoordinate const&) const: error: undefined reference to ‘c2t::clip2tri::pointInPolygon(QtClipperLib::IntPoint const&, std::vector<QtClipperLib::IntPoint, std::allocatorQtClipperLib::IntPoint > const&)’
collect2: error: ld returned 1 exit status
make[3]: *** [Makefile:220: …/…/lib/libQt5Positioning.so.5.12.4] Error 1

安裝這個解決了

sudo apt-get install libclipper-dev
  1. 編譯進(jìn)行兩三個小時后,如果你的電腦內(nèi)存小于8G有可能會終止編譯,并出現(xiàn)下面這兩段。

    g++: fatal error: 已殺死 signal terminated program cc1plus
    ninja: build stopped: subcommand failed.

    • 造成這個錯誤的原因是因?yàn)橄到y(tǒng)資源不足,可以重新執(zhí)行make嘗試一下。
    • 還可以擴(kuò)大系統(tǒng)的swap分區(qū)
    `先查看一下swap的大小`
    free -h 
    `我這邊是2G,但是我的交換分區(qū)是8G,執(zhí)行下面這段查看,猜測是swap_file(系統(tǒng)自帶)沒有計算在其中`
    sudo swapon --show
    `輸出大概如下`
    > /dev/zram0           partition   2G
    > /swap_file           file        8G
    
    `/swapfile_1路徑是可以更換的,銀河麒麟系統(tǒng)通常有數(shù)據(jù)盤,數(shù)據(jù)盤很大,我一般選擇這樣/data/swap/swapfile_1`
    fallocate -l 8G /swapfile_1
    chmod 600 /swapfile_1
    mkswap /swapfile_1
    swapon /swapfile_1
    `然后編輯文件`
    vim /etc/fstab
    `在最后一行寫入`
    /swapfile_1 swap swap defaults 0 0
    
    `執(zhí)行完成之后,資源管理器中可能還是沒變化,查詢一下`
    sudo swapon --show
    `如果存在/swapfile_1應(yīng)該就是可以了,查詢swap看看容量是否變化了`
    free -h
    `容量變成了9G,應(yīng)該是剛才新增的8G起作用了`
    
    • 或者make時少分配幾個線程

環(huán)境變量

vim ~/.bashrc

在最后一行添加

# 路徑換成你自己的
export PATH=/home/johnson/Qt5.12.4/bin:$PATH

然后執(zhí)行

source ~/.bashrc

結(jié)束

經(jīng)過六七個小時的編譯,終于成功了。
我的QtWebEngine在--multi-process模式下偶爾會莫名的崩潰(崩潰status是QWebEnginePage::CrashedTerminationStatus (2),code是139;簡單的html網(wǎng)頁不會崩),需要reload web引擎才行;換成--single-process就好了,不知道怎么回事,有沒有大佬知道情況的[拜托了??????]文章來源地址http://www.zghlxwxcb.cn/news/detail-752254.html

到了這里,關(guān)于銀河麒麟V10 SP1 ARM編譯QT源代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

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

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 銀河麒麟服務(wù)器v10 sp1 安裝mysql

    銀河麒麟服務(wù)器v10 sp1 安裝mysql

    可以先用 dpkg --list|grep mysql 查看自己的mysql有哪些依賴: 上圖已經(jīng)是安裝后的截圖,然后再卸載 sudo apt-get autoremove --purge mysql-common 本文在沒有安裝之前,只有mysql-common包,再用dpkg --list|grep mysql查看,還剩什么就卸載什么。 最后清除殘留數(shù)據(jù),如配置文件my.cnf等: dpkg -l |gr

    2024年02月13日
    瀏覽(34)
  • 銀河麒麟服務(wù)器v10 sp1 nginx 部署項(xiàng)目

    銀河麒麟服務(wù)器v10 sp1 nginx 部署項(xiàng)目

    上一篇:銀河麒麟服務(wù)器v10 sp1 nginx開機(jī)自動啟動_csdn_aspnet的博客-CSDN博客 ?由于項(xiàng)目為前后端分離,前端項(xiàng)目使用nginx部署,VUE項(xiàng)目打包后上傳至銀河麒麟服務(wù)器: 8063 為前端項(xiàng)目文件目錄,修改配置?,默認(rèn)配置沒有處理: ?sudo systemctl stop?nginx.service ?sudo systemctl status ngi

    2024年02月15日
    瀏覽(26)
  • 虛擬機(jī)安裝intel架構(gòu)的銀河麒麟V10(SP1)

    虛擬機(jī)安裝intel架構(gòu)的銀河麒麟V10(SP1)

    ? ? ? ? 銀河麒麟是國產(chǎn)操作系統(tǒng)之一,是基于Linux內(nèi)核的桌面操作系統(tǒng),有自己的應(yīng)用中心,具有一定的生態(tài)系統(tǒng)。今從官網(wǎng)下載了V10(SP1)鏡像文件,在Windowns的VMware虛擬機(jī)上安裝試用。 ? ? 官網(wǎng):https://product.kylinos.cn/productCase/171/36 ? ? 點(diǎn)擊 申請試用,然后進(jìn)入下載頁面

    2024年01月21日
    瀏覽(27)
  • 在銀河麒麟V10SP1forARM版本上離線編譯libreoffice-7.1.8.1和kkfileview的部署,實(shí)現(xiàn)在線查看功能

    在銀河麒麟V10SP1forARM版本上離線編譯libreoffice-7.1.8.1和kkfileview的部署,實(shí)現(xiàn)在線查看功能

    編譯libreoffice-7.1.8.1和配置kkfileview 需要以下文件, kkFileView-4.0.0-可以使用.tar.gz文件已經(jīng)將配置文件增加進(jìn)去 libreoffice-7.1.8.1.tar.xz 是libreoffice源文件,需要對其進(jìn)行編譯 libreoffice-external-tar.tar.gz 是libreoffice程序需要的相關(guān)組件 libreoffice-yum-new.tar.gz 編譯器環(huán)境用的組件 autogen .i

    2024年02月04日
    瀏覽(27)
  • 銀河麒麟桌面操作系統(tǒng)V10SP1修復(fù)boot分區(qū)

    銀河麒麟桌面操作系統(tǒng)V10SP1修復(fù)boot分區(qū)

    一、問題現(xiàn)象 機(jī)器重啟無法進(jìn)入系統(tǒng),出現(xiàn)“Loading initial ramdisk”界面,此時可能是boot文件損壞,導(dǎo)致無法進(jìn)入系統(tǒng) 二、boot分區(qū)修復(fù) 1、準(zhǔn)備一個與主機(jī)相同系統(tǒng)版本的系統(tǒng)啟動盤 2、將U盤插入主機(jī),進(jìn)入bios將光盤(或U盤啟動盤)設(shè)置為第一啟動項(xiàng) -- 開機(jī)選擇“試用銀河

    2024年02月11日
    瀏覽(83)
  • 銀河麒麟高級服務(wù)器v10 sp1 iso鏡像定制

    https://www.kylinos.cn/support/trial.html?pid=1 ? ? ?? 安裝選擇最小化安裝 1 虛擬機(jī)下掛載原版鏡像 1) 查看光盤是否已掛載 ls -l /dev/cdrom |grep cd 2) 將ISO所在的/dev/cdrom掛載到/media mount /dev/cdrom /media 2 安裝制作發(fā)行版的工具 yum -y install createrepo mkisofs isomd5sum rsync 3 同步光盤文件到制作ISO的

    2024年02月06日
    瀏覽(21)
  • 銀河麒麟服務(wù)器 v10 sp1 安裝 .Net6.0

    銀河麒麟服務(wù)器 v10 sp1 安裝 .Net6.0

    系統(tǒng)版本、架構(gòu): ?如果系統(tǒng)自帶.netcore3,先卸載系統(tǒng)自帶的.netcore3: ?卸載.netcore3: 我的系統(tǒng)沒有自帶.netcore3,也沒有yum命令。 下載二進(jìn)制文件安裝SDK: 下載 .NET 6.0 (Linux、macOS 和 Windows) 下載后將文件dotnet-sdk-6.0.411-linux-x64.tar.gz,上傳至銀河麒麟服務(wù)器: 我的第一步給文

    2024年02月12日
    瀏覽(44)
  • 銀河麒麟桌面V10SP1版本系統(tǒng)休眠喚醒鼠標(biāo)鍵盤失效解決方法

    銀河麒麟桌面V10SP1版本系統(tǒng)休眠喚醒鼠標(biāo)鍵盤失效解決方法

    使用銀河麒麟桌面系統(tǒng)有時會出現(xiàn)系統(tǒng)休眠后再喚醒,鼠標(biāo)鍵盤失效的問題,可嘗試以下方法解決。 1.檢查是否安裝 laptop-mode-tools 工具 執(zhí)行命令: 如果執(zhí)行命令無結(jié)果輸出,表示未安裝(如果已安裝,忽略第2步) 2.安裝 laptop-mode-tools 包 執(zhí)行命令: 安裝完成后查看結(jié)果 3.判斷

    2024年02月12日
    瀏覽(35)
  • 銀河麒麟服務(wù)器操作系統(tǒng) V10 SP1 開啟SSH服務(wù)

    銀河麒麟服務(wù)器操作系統(tǒng) V10 SP1 開啟SSH服務(wù)

    此處顯示已經(jīng)安裝了openssh。 如果此處沒有任何輸出顯示,表示沒有安裝openssh 當(dāng)發(fā)現(xiàn)沒有安裝openssh時,使下面的命令安裝openssh: 如圖所示,已經(jīng)開啟sshd服務(wù)。 如果顯示未開啟sshd服務(wù),使用下列命令開啟sshd服務(wù) 使用下面的命令查看ssh服務(wù)是否開機(jī)啟動 如上圖所示,ssh已經(jīng)

    2023年04月22日
    瀏覽(34)
  • 銀河麒麟服務(wù)器v10 sp1 .Net6.0 上傳文件錯誤

    銀河麒麟服務(wù)器v10 sp1 .Net6.0 上傳文件錯誤

    上一篇:銀河麒麟服務(wù)器v10 sp1 部署.Net6.0 http https_csdn_aspnet的博客-CSDN博客 .NET 6之前,在Linux服務(wù)器上安裝 libgdiplus 即可解決,libgdiplus是System.Drawing.Common原生端跨平臺實(shí)現(xiàn)的主要提供者,是開源mono項(xiàng)目。地址:GitHub - mono/libgdiplus: C-based implementation of the GDI+ API 因此,解決方法

    2024年02月12日
    瀏覽(26)

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

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

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

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

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包