Qtwebkit配置,设置交叉编译环境 - croop520的专栏 - 博客频道 - CSDN.NET

分类: Qt Webkit 2012-04-12 15:18 4004人阅读 评论(2) 收藏 举报

因为工作需要,要用Qtwebkit在机顶盒中做浏览器,所以首先要在盒子中把Qtwebkit的demo程序跑起来,再接着后面的开发,在跑程序之前,我们要做一些前期的准备工作。

一、搭建交叉编译环境

因为这次盒子支持的编译器为:arm-none-linux-gnueabi,所以需要先在linux上安装这个交叉编译器,我的做法是在/opt目录下新建一个arm-gnueabi目录,并把编译器解压到该目录(具体命令就不用说了吧)。

安装好交叉编译器后,需要指定编译器的PATH路径,如:export PATH=/opt/arm-gnueabi/arm-none-linux-gnueabi/bin:$PATH

二、下载Qtwebkit代码(暂定使用4.8.1版本)

1、下载Qtwebkit代码地址:http://get.qt.nokia.com/qt/source/qt-everywhere-opensource-src-4.8.1.tar.gz

2、在自己的linux机器的/home目录下新建一个qt的目录用于存放Qtwebkit代码,把下载好的Qtwebkit代码放到新建的qt目录中,并解压:tar zxvf  qt-everywhere-opensource-src-4.8.1.tar.gz。解压后会在qt中看到解压后的目录:qt-everywhere-opensource-src-4.8.1,我们就是要在qt-everywhere-opensource-src-4.8.1目录中配置Qtwebkit和编译,先cd把当前目录跳转到qt-everywhere-opensource-src-4.8.1目录吧,我们要进行第三步骤了。

三、配置Qtwebkit编译选项

配置Qtwebkit需要使用configure命令,因为我们是要在机顶盒上面跑demo程序,所以属于嵌入式设备,查看嵌入式设备可以使用哪些配置选项可以使用命令:./configure -embedded -help

我这次配置使用的命令如下:./configure -embedded arm-gnueabi -xplatform qws/linux-arm-gnueabi-g++ -no-cups -no-stl -no-qvfb -webkit

命令选项使用说明:

-embedded:指定CPU的架构,我使用的是arm的CPU,所以指定了arm-gnueabi。原文说明如下:

-xplatform:指定需要运行的目标板的平台。qt默认支持绝大多数的平台,只要找到自己相对于的平台就行,可以在qt-everywhere-opensource-src-4.8.1/mkspecs目录下找,我的编译器配置位于:qt-everywhere-opensource-src-4.8.1/mkspecs/qws/linux-arm-gnueabi-g++目录下,所以指定的目标板为:qws/linux-arm-gnueabi-g++.

特别说明下:arm,mips的编译器都在qws目录下,可以在该目录下找。另外-xplatform后面跟的是编译器qmake.conf配置所在的路径而不是具体的编译器。

选项原文说明如下:

-no-cups:不编译CUPS部分(CUPS是什么意思请自己查)。原文说明如下:

-no-stl:不编译STL部分。原文说明如下:

-no-qvfb:不使用虚拟的framebuffer。

-webkit:编译webkit部分,我需要使用webkit,所以这个选项是肯定要加上的。原文说明如下:

提示:上面说的步骤可以参考网页:http://qt-project.org/doc/qt-4.8/qt-embedded-install.html

配置命令执行时会出现,请输入o,配置需要比较长的时间,可以去喝杯水:

Type 'c' if you want to use the Commercial Edition.

Type 'o' if you want to use the Open Source Edition.

四、编译Qtwebkit。

配置成功后,请输入:make命令开始编译,编译过程非常的久,需要耗时几个小时,请耐心的等待。

五、运行demo

1、挂载我所在的qt目录到板子的/mnt目录下,如:mount -o nolock,tcp 192.168.1.10:/home/qt /mnt

2、指定动态链接库的地址:

export QT_QWS_FONTDIR=/mnt/qt-everywhere-opensource-src-4.8.1/lib/fonts

export LD_LIBRARY_PATH=/mnt/qt-everywhere-opensource-src-4.8.1/lib:/sdklib  

说明:QT_QWS_FONTDIR是指定字库的地址,/sdklib是板子SDK的lib库。

3、cd 到该目录执行demo,/mnt/qt-everywhere-opensource-src-4.8.1/demos/browser

4、执行应用程序:./browser -qws

5、如果想打开某一个网页如百度,请使用命令:./browser -qws http://www.baidu.com

 

六、结束,请多看文档。

 

 

Qtwebkit配置,设置交叉编译环境 - croop520的专栏 - 博客频道 - CSDN.NET的更多相关文章

  1. 在MyEclipse8.6中设置jQuery自动提示 - 肖飞figo的云计算专栏 - 博客频道 - CSDN.NET

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  2. CUDA从入门到精通 - Augusdi的专栏 - 博客频道 - CSDN.NET

    http://blog.csdn.net/augusdi/article/details/12833235 CUDA从入门到精通 - Augusdi的专栏 - 博客频道 - CSDN.NET CUDA ...

  3. libcurl 多线程使用注意事项 - Balder~专栏 - 博客频道 - CSDN.NET

    libcurl 多线程使用注意事项 - Balder~专栏 - 博客频道 - CSDN.NET libcurl 多线程使用注意事项 分类: C/C++学习 2012-05-24 18:48 2843人 ...

  4. DOS日期和时间 - Robin Hu的专栏 - 博客频道 - CSDN.NET

    body { font-family: Microsoft YaHei UI,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-ser ...

  5. ibatis 学习笔记 3 - pfpfpfpfpf的专栏 - 博客频道 - CSDN.NET

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  6. C# DataTable的詳細用法 - hcw_peter的专栏 - 博客频道 - CSDN

    C# DataTable的詳細用法 - hcw_peter的专栏 - 博客频道 - CSDN.NET 在项目中经常用到DataTable,如果DataTable使用得当,不仅能使程序简洁实用,而且能够 ...

  7. 基于视觉信息的网页分块算法(VIPS) - yysdsyl的专栏 - 博客频道 - CSDN.NET

    基于视觉信息的网页分块算法(VIPS) - yysdsyl的专栏 - 博客频道 - CSDN.NET 于视觉信息的网页分块算法(VIPS) 2012-07-29 15:22 1233人阅读 评论(1) ...

  8. Extjs4---Cannot read property 'addCls' of null - heirenheiren的专栏 - 博客频道 - CSDN.NET

    body { font-family: 微软雅黑,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-serif,宋体, PMingLi ...

  9. css控制div显示/隐藏方法及2种方法比较原码 - czf164的专栏 - 博客频道 - CSDN.NET

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

随机推荐

  1. 对“xxx”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们。

    在程序中调用C++链接库中的回调函由于没有考虑生命周期,直接写委托回随机的被gc给回收掉导致报这个错误 错误的程序: private void InitPlateIdentify() { try { ...

  2. P - Shopaholic

    P - Shopaholic Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%lld & %llu Submit ...

  3. 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息

    简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 简单的scrapy实战:爬取腾讯招聘北京地区的相关招聘信息 系统环境:Fedora22(昨天已安装scrapy环境) 爬取的开始URL:ht ...

  4. 使用Qt 开发图形界面的软件(尘中远)

    3DSlicer, a free open source software for visualization and medical image computing AcetoneISO:镜像文件挂 ...

  5. Unix Shells: Bash, Fish, Ksh, Tcsh, Zsh

    Hyperpolyglot Unix Shells: Bash, Fish, Ksh, Tcsh, Zsh grammar | quoting and escaping | charactersvar ...

  6. Codeforces 703D Mishka and Interesting sum(树状数组+扫描线)

    [题目链接] http://codeforces.com/contest/703/problem/D [题目大意] 给出一个数列以及m个询问,每个询问要求求出[L,R]区间内出现次数为偶数的数的异或和 ...

  7. 打印NxN的矩阵

    找出规律,并打印出一个NxN的矩阵,规律就是从首坐标开始顺时针依次增大: #include<iostream> #include<vector> using namespace ...

  8. Windows环境下用C#编程将文件上传至阿里云OSS笔记

    Windows环境下用C#编程将文件上传至阿里云OSS笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/detai ...

  9. Cocos2d-x3.0 捕Android菜单键和返回键

    原文地址:http://blog.csdn.net/qqmcy/article/details/26172665 .h void onKeyReleased(EventKeyboard::KeyCod ...

  10. iOS 相互引用引起内存泄露问题说明

    release动作只会对自身计数减一,而不会对属性发出release消息,只有该对象的引用计数为0,系统才会对该对象的所有属性发出release消息 类A的属性有类B,类B的属性有类A,而且两者都是强 ...