位置: 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如何解决消息堆积问题)

  • 流量后时代:应用分发市场竞争激烈,用户质量比数量更重要(流量时代过去下一个时代是)

    流量后时代:应用分发市场竞争激烈,用户质量比数量更重要(流量时代过去下一个时代是)

  • ios三指复制粘贴怎么开启(ios三指复制粘贴怎么设置)

    ios三指复制粘贴怎么开启(ios三指复制粘贴怎么设置)

  • 小米平板5怎么进入电脑模式(小米平板5怎么设置儿童限制功能)

    小米平板5怎么进入电脑模式(小米平板5怎么设置儿童限制功能)

  • 怎么给主播飘屏(怎么给主播飘屏打字弹幕)

    怎么给主播飘屏(怎么给主播飘屏打字弹幕)

  • 支付宝跟淘宝怎么解绑(支付宝跟淘宝怎么绑定)

    支付宝跟淘宝怎么解绑(支付宝跟淘宝怎么绑定)

  • 淘宝权重怎么提升权重(提升淘宝权重)

    淘宝权重怎么提升权重(提升淘宝权重)

  • 抖音注销的账号可以恢复吗(抖音注销的账号别人还能看到吗)

    抖音注销的账号可以恢复吗(抖音注销的账号别人还能看到吗)

  • 微信文件大于100m不能传送怎么办(微信文件大于100m)

    微信文件大于100m不能传送怎么办(微信文件大于100m)

  • 手机在线2g一定是关联吗(手机2g在线是在线还是不在线)

    手机在线2g一定是关联吗(手机2g在线是在线还是不在线)

  • qq撤回失败是什么意思(qq撤回失败是什么情况)

    qq撤回失败是什么意思(qq撤回失败是什么情况)

  • 电脑无网络连接怎么办(电脑无网络连接有个感叹号)

    电脑无网络连接怎么办(电脑无网络连接有个感叹号)

  • 淘宝注销后可以用原来的手机号重新注册吗(淘宝注销后可以改会员名吗)

    淘宝注销后可以用原来的手机号重新注册吗(淘宝注销后可以改会员名吗)

  • 思科交换机恢复出厂设置(思科交换机恢复密码)

    思科交换机恢复出厂设置(思科交换机恢复密码)

  • 快手戳一下怎么取消(快手戳一下怎么取消戳过的人)

    快手戳一下怎么取消(快手戳一下怎么取消戳过的人)

  • 尼康d5600和d7500区别(尼康d5600和d7500差距大不大)

    尼康d5600和d7500区别(尼康d5600和d7500差距大不大)

  • synchronized和lock的异同(synchronized和lock都是可重入锁)

    synchronized和lock的异同(synchronized和lock都是可重入锁)

  • 荣耀9plus有nfc功能吗(华为荣耀9带nfc)

    荣耀9plus有nfc功能吗(华为荣耀9带nfc)

  • 95开头号码如何拦截苹果手机(95开头属于什么号码)

    95开头号码如何拦截苹果手机(95开头属于什么号码)

  • 华为键盘声音怎么设置(华为键盘声音怎么设置开关)

    华为键盘声音怎么设置(华为键盘声音怎么设置开关)

  • 怎么测试微信好友有没有删除自己(怎么测试微信好友把我删除了群发)

    怎么测试微信好友有没有删除自己(怎么测试微信好友把我删除了群发)

  • 苹果手机怎么下载两个qq(苹果手机怎么下微信分身)

    苹果手机怎么下载两个qq(苹果手机怎么下微信分身)

  • 小米8发烫严重怎么办(小米8发烫严不严重)

    小米8发烫严重怎么办(小米8发烫严不严重)

  • Ghost安装器怎么安装Win10?Ghost安装器下安装Win10专业版系统详细图文教程(ghost 安装器)

    Ghost安装器怎么安装Win10?Ghost安装器下安装Win10专业版系统详细图文教程(ghost 安装器)

  • win10蓝牙添加设备无法连接怎么办(win10蓝牙添加设备闪退)

    win10蓝牙添加设备无法连接怎么办(win10蓝牙添加设备闪退)

  • 第十章 STM32+ESP8266接入机智云 实现小型IOT智能家居项目(第十章光结局和夜结局)

    第十章 STM32+ESP8266接入机智云 实现小型IOT智能家居项目(第十章光结局和夜结局)

  • 增值税纳税义务确认时间
  • 小规模未达到起征点申报表怎么填
  • 福利费用属于工资吗
  • 税率如何衡量税负
  • 原始凭证包括会计档案吗
  • 验签失败的发票追不回来怎么办
  • 股权转让涉及房屋产权变更怎么办
  • 向税务局缴纳工伤保险费有发票吗
  • 简易计税算税收优惠吗
  • 租个人房子开发票税率是多少
  • 企业所得税弥补亏损年限
  • 零税率发票可以冲成本吗
  • 空调安装企业能申请工程发票吗?
  • 企业股份转让要交税吗
  • 养牛场增值税的税率是多?
  • 增值税普通发票和专用发票有什么区别
  • 增值税税控系统技术维护费计入什么科目
  • 机票进项税额怎么申报
  • 交易性金融资产公允价值变动计入
  • win11默认用户名
  • 单位外币账户
  • 私立幼儿园收费归哪个部门管
  • 如何恢复撤回的信息微信
  • php的认识
  • 视同销售要做收入?
  • 办公大楼装修费怎么算
  • 退伍兵自谋职业后被单位辞退怎么办
  • 海鸥歌曲
  • 出口退税需要提供什么
  • 开发票的零税率和免税有什么区别
  • vue.js in action
  • java解析xml常用方式
  • 深入理解php
  • 固定资产的基本特征有哪些
  • wordpress建立数据库错误
  • 个税率是多少
  • 一个月可以勾选多少进项税额
  • 原材料入库单价20000出库单价800000
  • 外贸da付款方式的流程图
  • 报关单填制相关规范相关文件
  • 同一控制下企业合并和非同一控制下企业合并的区别
  • 公司向股东借款多久必须归还
  • 工商企业年报网上申报流程
  • 无形资产一般包括哪些权利
  • 企业会计准则子公司
  • 直接计入所有者权益的利得和损失,影响当期损益
  • 预收账款是怎么算的
  • 进项税和销项税月末怎么结转
  • 企业需要建立什么?完善什么?
  • 电子增值税发票样本
  • 损益平准金结转
  • 异地成立子公司能用母公司的名称吗?
  • 存货跌价准备冲减成本
  • 购买农药化肥怎么入账
  • windows2003r2安装教程
  • 进程中svchost
  • linux软件类型
  • linux怎么下载安装腾讯Tim?
  • win7如何限制网速
  • window10外接摄像头怎么启用
  • Linux系统配置IP地址
  • win7 64位旗舰版系统联网时提示0x80070002的解决方法
  • vps禁用ipv6
  • 狗刨好学吗
  • windows下安装nas
  • jquery中的eq是什么
  • nodejs 函数
  • mac怎么编写python
  • unity 5.4
  • javascript代码规范
  • 收藏一些不常用的图片
  • python编写登录程序
  • jquery图表
  • android activity finish
  • jquery根据name
  • 自然人电子税务局下载
  • 地税稽查局查账严重吗
  • 德清社保局固定电话多少
  • 广东发票勾选认证操作流程
  • 武汉市江岸区工商局咨询电话
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设