位置: IT常识 - 正文

Qt4.7.4下单独编译QtWebkit(qt 5.15 编译)

编辑:rootadmin
Qt4.7.4下单独编译QtWebkit_奕贤2003_新浪博客Qt4.7.4下单独编译QtWebkit 最近编译出了Qt4.7.4的嵌入式版本,但没有编译QtWebkit库。在编译一个使用Webki Qt4.7.4下单独编译QtWebkit

推荐整理分享Qt4.7.4下单独编译QtWebkit(qt 5.15 编译),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:qt6.0编译,qt6.0编译,qt单独编译指定模块,qt6.0编译,qt简单程序,qt 5.15 编译,qt单独编译指定模块,qt编写软件,内容如对您有帮助,希望把文章链接给更多的朋友!

最近编译出了Qt4.7.4的嵌入式版本,但没有编译QtWebkit库。在编译一个使用Webkit的工程时出错,而根据工程的需要,要单独编译QtWebkit库。

由于不想再次编译整个的Qt库,于是进行了下面的尝试,发现单独编译QtWebkit还是简单的,当然其它模块也是一样的。

具体过程如下:

1.在qt源码包的顶层运行configure配置:

------------------------------------------

./configure -opensource -confirm-license -release \

-prefix /usr/local/arm/qte4.7.4 \

-webkit -qt-zlib -no-script \

-xplatform qws/linux-arm-gnueabi-g++ -embedded armv6 \

-qt-kbd-linuxinput -qt-mouse-linuxinput -plugin-gfx-linuxfb \

-nomake demos -nomake examples -nomake tools -fast \

-L /usr/local/arm/lib -I /usr/local/arm/include

-----------------------------------------------------------

2.生成QtWebKit模块的Makefile文件

进入QtWebKit源码所在的目录./src/3rdparty/webkit.如果在目录中执行make会出错,主要是qmake找不到,因为在这时的Makefile文件中,使用的是固定路径的qmake.

使用以下命令重生成Makefile文件,当然后面的spec路径要根据实际情形设置

qmake WebKit.pro -r -spec /usr/local/arm/qte4.7.4/mkspecs/qws/linux-arm-gnueabi-g++

3.编译make

编译过程中仍出现错误:

-----------------------------------------------------------------------------------------

......

正在进入目录 `/home/dragon/project/qte4.7.4/src/3rdparty/webkit/WebKit/qt/tests/qwebframe'

然后一堆类似这样的错误

../../Api/qwebframe.cpp:21:20: error: config.h: No such file or directory

../../Api/qwebframe.cpp:24:20: error: Bridge.h: No such file or directory

../../Api/qwebframe.cpp:25:23: error: CallFrame.h: No such file or directory

../../Api/qwebframe.cpp:26:22: error: Document.h: No such file or directory

Qt4.7.4下单独编译QtWebkit(qt 5.15 编译)

../../Api/qwebframe.cpp:27:28: error: DocumentLoader.h: No such file or directory......

-----------------------------------------------------------------------------------------

看来忘加-nomake test选项了,但幸好QtWebKit库己编译出来,就不去处理这些错误了。后来经过试验,加上-nomake test编译就不会出现错误了。

4.安装make install

再到安装目录中检查,libQtWebKit.so.4.7.4库己经安装

5.测试使用现在的QtEmbedded来编译一个使用QtWebKit的工程browser,在make过程中出错:

------------------------------------------------------------------------------------------

In file included from /usr/local/arm/qte4.7.4/include/QtWebKit/QWebFrame:1,

from browsermainwindow.cpp:70:

/usr/local/arm/qte4.7.4/include/QtWebKit/qwebframe.h:28:36: error: QtScript/qscriptengine.h: No such file or directory

In file included from /usr/local/arm/qte4.7.4/include/QtWebKit/QWebFrame:1,

from browsermainwindow.cpp:70:------------------------------------------------------------------------------------------

看来QtWebKit依赖QtScript,只好再编译QtScript。

下面是单独编译QtScript模块的过程

这次confiugre的参数配置如下:

------------------------------------------------------------

./configure -opensource -confirm-license -release \

-prefix /usr/local/arm/qte4.7.4 \

-webkit -qt-zlib \

-xplatform qws/linux-arm-gnueabi-g++ -embedded armv6 \

-qt-kbd-linuxinput -qt-mouse-linuxinput -plugin-gfx-linuxfb \

-nomake demos -nomake examples -nomake tools -nomake test -fast \

-L /usr/local/arm/lib -I /usr/local/arm/include

------------------------------------------------------------

与上次配置不同的是去掉了-no-script选项,增加了-nomake test选项

然后进入./src/script目录

qmake script.pro -r -spec /usr/local/arm/qte4.7.4/mkspecs/qws/linux-arm-gnueabi-g++

make

make install

现在再次编译browser工程,终于顺利地单独编译出QtWebKit库。并使用一个工程进行了测试,一切都正常。

从上面的过程可以看出,Qt库的许多模块可以单独编译的。只要先使用configure配置选上需要的模块,注意带上-fast选项和适当的-nomake选项;然后进到相应的模块源码目录中,使用qmake重新生成对应的Makfile文件;在此目录make、make install。如此这般就完成了Qt模块的单独编译.

有人可能会问,为什么要单独编译。当然可以一次就搞定所有模块,不过交叉编译往往由于各种原因,某些模块编译通不过,有时有些模块肯定用不到,总有一些原因造成Qt的模块编译不完整。在这时,不需要再次编译所有的Qt库,只要单独编译就可以的。何乐而不为

本文链接地址:https://www.jiuchutong.com/zhishi/310251.html 转载请保留说明!

上一篇:python类属性设置默认值(python中类的属性)

下一篇:RabbitMQ(rabbitmq如何解决消息堆积问题)

  • 漫步者蓝牙耳机怎么重新配对(漫步者蓝牙耳机怎么配对)

    漫步者蓝牙耳机怎么重新配对(漫步者蓝牙耳机怎么配对)

  • 网络ac和ap是什么意思(网络ac+ap方案)

    网络ac和ap是什么意思(网络ac+ap方案)

  • 华为p20长度是多少cm(华为p20手机的长度多少厘米)

    华为p20长度是多少cm(华为p20手机的长度多少厘米)

  • 手机摄像头会被远程控制吗(手机摄像头会被别人监视吗)

    手机摄像头会被远程控制吗(手机摄像头会被别人监视吗)

  • 微信已开双封是什么意思(微信开双封是什么意思)

    微信已开双封是什么意思(微信开双封是什么意思)

  • 什么又称web客户端程序(web客户端是什么意思啊)

    什么又称web客户端程序(web客户端是什么意思啊)

  • ipad连上网了但不能上网怎么回事(ipad连上网了但不能上网)

    ipad连上网了但不能上网怎么回事(ipad连上网了但不能上网)

  • icloud钥匙串有什么用(icloud钥匙串什么意思)

    icloud钥匙串有什么用(icloud钥匙串什么意思)

  • 魅族16s怎么使用放大功能(魅族16th如何)

    魅族16s怎么使用放大功能(魅族16th如何)

  • iphone5可不可以录屏(苹果5可以用ios12吗)

    iphone5可不可以录屏(苹果5可以用ios12吗)

  • 拼多多推荐商品怎么删(怎么删除拼多多推荐商品)

    拼多多推荐商品怎么删(怎么删除拼多多推荐商品)

  • 表格在试图打开文件时遇到错误(表格在试图打开怎么设置)

    表格在试图打开文件时遇到错误(表格在试图打开怎么设置)

  • iphone8是几核(苹果8是六核全开吗)

    iphone8是几核(苹果8是六核全开吗)

  • 联联周边游分享达人怎么注册(联联周边游分享文案)

    联联周边游分享达人怎么注册(联联周边游分享文案)

  • 抖音直播被永久封了怎么解封(抖音直播被永久禁播还能恢复吗)

    抖音直播被永久封了怎么解封(抖音直播被永久禁播还能恢复吗)

  • 如何查看苹果使用的是不是高通的(如何查看苹果使用情况)

    如何查看苹果使用的是不是高通的(如何查看苹果使用情况)

  • ram的最大特点是什么(ram的特点是())

    ram的最大特点是什么(ram的特点是())

  • pr序列是什么(pr的序列是什么意思)

    pr序列是什么(pr的序列是什么意思)

  • 新手如何使用共享单车(新手如何使用共享单车一次多少饯)

    新手如何使用共享单车(新手如何使用共享单车一次多少饯)

  • cad怎么转换成图片形式(cad怎么转换成图片格式)

    cad怎么转换成图片形式(cad怎么转换成图片格式)

  • 华为折叠屏手机什么时候上市(华为折叠屏手机哪款最好)

    华为折叠屏手机什么时候上市(华为折叠屏手机哪款最好)

  • ipad访问限制(ipad访问限制已启用,怎样关闭)

    ipad访问限制(ipad访问限制已启用,怎样关闭)

  • Waterfalls at the source of the Mundo River, Sierra de Riopar, Albacete, Spain (© Westend61/Getty Images)

    Waterfalls at the source of the Mundo River, Sierra de Riopar, Albacete, Spain (© Westend61/Getty Images)

  • 一般纳税人增值税会计账务处理
  • 让渡资产使用权是指资产的所有者将
  • 业务往来说明范本
  • 签章是签字还是盖章 财务
  • 现金股利什么时候发放
  • 无营业执照是否可以先办场所码
  • 计算企业所得税不得扣除的项目
  • 转让无形资产专利权的账务处理
  • 销售部预借差旅费什么凭证
  • 非福利企业残疾人用工优惠
  • 小规模企业应交增值税的二级科目
  • 接受控股股东的非现金资产捐赠
  • 分公司借款给总公司
  • 银行收付款通知短信
  • 广告公司税收分析
  • 税务登记号和统计号区别
  • 税控盘证书密码一天可以输几次
  • 快递公司税收优惠
  • 怎么核算租赁合同的印花税?
  • 手工帐财务费用怎么结转
  • 开具红字专用发票要求
  • 小微企业行业划分标准 工信部
  • 楷体_gb2312字体
  • bios咋进入
  • 如何批量更改多个excel内容
  • 建筑公司收到工程款需要交哪些税
  • php基础入门教程
  • 生产企业免抵退税实例
  • three.js gui
  • gunzip命令压缩
  • 公司请的临时工
  • list删除某个元素 python
  • 帝国cms使用手册
  • 固定资产支出计入什么科目
  • 平价股权转让还需要所得税吗
  • 房地产转让条例最新
  • mysql左连接查询 效率
  • js怎么执行函数
  • 经营性应付项目的增加为什么调减
  • sql20054n
  • 增资扩股和股权转让一样吗
  • 技术服务费会计科目
  • 发行股票会计怎么做分录
  • 工业企业制造费用具体怎么摊
  • 无形资产是什么?
  • 运输开票的税点是多少
  • 税控盘上报
  • 科技专项资金
  • 收到电费发票做账怎么做
  • 建筑业增值税会退税吗
  • 退差价后退货
  • 劳务公司发放农民工工资要交个税吗
  • 个人独资企业个体工商户的区别
  • 销售单位收入和税收
  • 员工的探亲费应由谁支付
  • 小规模纳税人如何缴纳企业所得税
  • 如何整理装订记账凭证
  • 连接mysql数据出错1045
  • sql server备份方法
  • 搜索框打开
  • 彻底删除win8应用商店
  • 利用ipy做ip地址的管理
  • 电脑2003系统
  • centos安装rpm文件
  • win8怎么升级到win7
  • cygwin在Windows8.1中设置ssh无密码登录
  • win10以管理员身份登录电脑
  • linux中apt-get和yum
  • WinMX.exe - WinMX是什么进程
  • centos文本编辑器
  • linux创建个人主页
  • 计算机策略设置
  • win7安装flash提示连接失败
  • 基于嵌入式linux的课程设计
  • 备份引导分区
  • 虚拟机中使用keil
  • node-js
  • python随机发红包代码
  • unity3d颜色
  • 注销税控机流程
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设