Qt With Web(兩種方法: WebAssembly,WebGL)

Qt 寫的程序,能夠經過某些方式,在 web 上瀏覽node

https://www.youtube.com/watch?v=OJ1ieyuIQzE​www.youtube.comhttps://www.youtube.com/watch?v=7MhMZ3qMQNI&feature=youtu.be​www.youtube.compython

你也能夠本身跑如下demogit

Qt For WebAssembly Examples​msorvig.github.iogithub


主要有2種方式,一個藉助 WebAssembly,一個藉助WebGLweb

咱們先說後一種,由於這個比較簡單瀏覽器

首先你程序必須是基於 Qt Quick 的,好比名叫 MyApp服務器

而後編譯完後,經過 ./MyApp -platform webgl:port=8998svg

就能夠經過打開瀏覽器,輸入 127.0.0.1:8998 來訪問你的程序了webgl

這種方式有一個缺點,一次只能跑一個實例ui

 

第二種方式是webAssembly

詳細的安裝和使用能夠參考這篇文章

陳錦明:瀏覽器上的Qt Quick​zhuanlan.zhihu.com圖標

主要講講我安裝編譯遇到的一些問題

首先是執行 ./emsdk install latest的時候出錯,由於在公司須要設置代理

export https://………………

而後修改./emsdk下的emsdk,用gedit打開後,在第12行新增import ssl

在18行新增ssl._create_default_https_context = ssl._create_unverified_context

 

接着在 ./qt-everywhere-src-5.12.0/configure -xplatform wasm-emscripten -nomake examples -prefix $PWD/qtbase時報錯,提示

Project ERROR: You cannot configure qt separately within a top-level build.

解決方法:刪除主目錄下的隱藏文件.qmake.super (我後來把.qmake開頭的都刪了 >o<)

 

接下來又報錯

ERROR: Cannot compile a minimal program. The toolchain or QMakeSpec is broken.

Check config.log for details.

解決方法:查看config.log發現urllib2.URLError: <urlopen error Tunnel connection failed: 407 authenticationrequired>

先export https://帳號:密碼@代理服務器:端口號

再在emsdk/emscripten/1.38.21/tools/ports/zlib.py添加

import ssl ssl._create_default_https_context = ssl._create_unverified_context 

接着多等待一段時間,makefile就創建好了

 https://zhuanlan.zhihu.com/p/51694632

相關文章
相關標籤/搜索