Qt With Web(两种方法: WebAssembly,WebGL)
Qt 写的程序,可以通过某些方式,在 web 上浏览
https://www.youtube.com/watch?v=OJ1ieyuIQzEwww.youtube.comhttps://www.youtube.com/watch?v=7MhMZ3qMQNI&feature=youtu.bewww.youtube.com
你也可以自己跑以下demo
Qt For WebAssembly Examplesmsorvig.github.io
主要有2种方式,一个借助 WebAssembly,一个借助WebGL
我们先说后一种,因为这个比较简单
首先你程序必须是基于 Qt Quick 的,比如名叫 MyApp
然后编译完后,通过 ./MyApp -platform webgl:port=8998
就可以通过打开浏览器,输入 127.0.0.1:8998 来访问你的程序了
这种方式有一个缺点,一次只能跑一个实例
第二种方式是webAssembly
详细的安装和使用可以参考这篇文章
陈锦明:浏览器上的Qt Quickzhuanlan.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
Qt With Web(两种方法: WebAssembly,WebGL)的更多相关文章
- Qt连接数据库的两种方法
我曾经想过,无论在哪个平台下开发,都不要再接触SQL Server了,但显然不行.我们是来看世界的,不是来改变世界的,想通就好. 前两天,尝试了一下Qt下远程访问数据库.在macOS下,用Qt 5.1 ...
- Qt中的布局浅析与弹簧的使用,以及Qt居中的两种方法
1. 布局 为什么要布局: 布局之后窗口的排列是有序的 布局之后窗口的大小发生变化, 控件的大小也会对应变化 如果不对控件布局, 窗口显示出来之后有些控件的看不到的 布局是可以嵌套使用 常用的布局方式 ...
- C# web api返回类型设置为json的两种方法
web api写api接口时默认返回的是把你的对象序列化后以XML形式返回,那么怎样才能让其返回为json呢,下面就介绍两种方法: 方法一:(改配置法) 找到Global.asax文件,在Applic ...
- Qt 之 设置窗口边框的圆角(使用QSS和PaintEvent两种方法)
Qt在设置窗口边框圆角时有两种方式,一种是设置样式,另一种是在paintEvent事件中绘制窗口.下面分别叙述用这两种方式来实现窗口边框圆角的效果. 一.使用setStyleSheet方法 this- ...
- C# web api 返回类型设置为json的两种方法
每次写博客,第一句话都是这样的:程序员很苦逼,除了会写程序,还得会写博客!当然,希望将来的一天,某位老板看到此博客,给你的程序员职工加点薪资吧!因为程序员的世界除了苦逼就是沉默.我眼中的程序员大多都不 ...
- web项目docker化的两种方法
标题所讲的两种方法其实就是创建docker镜像的两种方法 第一种:启动镜像后进入容器中操作,将需要的软件或者项目移动到容器中,安装或者部署,然后退出即可 第二种:编写dockerfile,将需要的镜像 ...
- [转]Qt中定时器使用的两种方法
Qt中定时器的使用有两种方法,一种是使用QObject类提供的定时器,还有一种就是使用QTimer类. 其精确度一般依赖于操作系统和硬件,但一般支持20ms.下面将分别介绍两种方法来使用定时器. 方法 ...
- 在Java Web程序中使用监听器可以通过以下两种方法
之前学习了很多涉及servlet的内容,本小结我们说一下监听器,说起监听器,编过桌面程序和手机App的都不陌生,常见的套路都是拖一个控件,然后给它绑定一个监听器,即可以对该对象的事件进行监听以便发生响 ...
- Qt中显示图像的两种方法
博客转载自:https://blog.csdn.net/lg1259156776/article/details/52325361 在Qt中处理图片一般都要用到QImage类,但是QImage的对象不 ...
- QT中获取选中的radioButton的两种方法(动态取得控件的objectName之后,对名字进行比较)
QT中获取选中的radioButton的两种方法 QT中要获取radioButton组中被选中的那个按钮,可以采用两种如下两种办法进行: 方法一:采用对象名称进行获取 代码: 1 QRadioBu ...
随机推荐
- linux下查看当前目录属于哪个分区?
下班之前写哈今天用的一个新命令. df -h /opt/test
- Qt打包部署程序自动查找依赖DLL工具windeployqt
qt编译好一个exe程序之后,部署到一台没有开发环境的机器上,需要一起拷贝其依赖的dll文件.这时需要一个windeployqt工具来帮忙,因为手动拷贝的话容易遗漏. https://blog.csd ...
- activity的启动模式有哪些?
Activity启动模式设置: <activity android:name=".MainActivity" android:launchMode="standar ...
- Java 实现文件批量重命名亲测可用(精简版)
package com.cmge.utils; import java.io.*; import java.util.*; import java.util.Map.Entry; import com ...
- java基础---->git的使用(一)
这里面记录一下git的使用,只是平时工作中遇到的一些问题的解决方案,不会涉及到git的一些基础概念及说明.人的天性便是这般凉薄,只要拿更好的来换,一定舍得. Git的一些使用 一.在码云建立好仓库之后 ...
- TCP数据传输过程详解
在学习三次握手的时候,我们知道其中有seq.ack两个序列号. 如果不仔细了解,那么可能只知道发回去的时候要加一. 下文将着重介绍,关于序列号的传输过程. 最关键的一句话:序列号为当前端成功发送的数据 ...
- 原生js--编码请求主体(异步请求)
1.表单编码请求 需要对每个表单元素进行普通的URL编码,使用“=”把编码后的名字和值分开,并使用“&”分开名值对. 例如:a=b&c=d 表单数据编码的MIME类型:applicat ...
- Ajax技术(WEB无刷新提交数据)
(转自:http://www.jb51.net/article/291.htm) Ajax内部交流文档一.使用Ajax的主要原因 1.通过适当的Ajax应用达到更好的用户体验: 2.把以前的一些服务器 ...
- MAC升级node及npm
清除node.js的cache: sudo npm cache clean -f 安装 n 工具,这个工具是专门用来管理node.js版本的,别怀疑这个工具的名字,是他是他就是他,他的名字就是 &qu ...
- How to Use Postman to Manage and Execute Your APIs
How to Use Postman to Manage and Execute Your APIs Postman is convenient for executing APIs because ...