QT Linux Demo程序编译
我手上的qt源码包为:qt-everywhere-opensource-src-4.7.0.tar.gz
在Linux下编译比较容易,解压后直接 ./configure,一般会报缺少什么库这些。自己遇到缺什么酒安装什么,我这个fedora里面安装了比较多的库这些吧。configure一次通过。
然后是make;make install
至于configure选项这些就自己 ./configure --help去看了。
我这里保持的都是默认安装的。
接下来就是在qt库的基础上写代码了;
这里以load一个网页为例:
- //webkit.pro :
- QT += webkit gui core
- TARGET = webkit
- TEMPLATE = app
- SOURCES+= widget.cpp main.cpp
- HEADERS+= widget.h
- //main.cpp
- #include <QtGui/QApplication>
- #include "widget.h"
- int main(int argc , char *argv[])
- {
- QApplication a(argc,argv);
- Widget widget;
- widget.show();
- return a.exec();
- }
- //widget.h
- #include <QDebug>
- #include <QWebView>
- #include <QWidget>
- class Widget: public QWidget
- {
- Q_OBJECT
- public:
- Widget(QWidget *parent = 0);
- ~Widget();
- void load();
- private:
- QWebView *webview;
- };
- //widget.cpp
- #include "widget.h"
- #include <QStringList>
- #include <QCoreApplication>
- Widget::Widget(QWidget *parent)
- : QWidget(parent)
- {
- resize(500,500);
- webview = new QWebView(this);
- load();
- }
- void Widget::load()
- {
- QStringList arg=QCoreApplication::arguments();
- if(arg.count()>1)
- {
- webview->load(QUrl(arg.last()));
- }else{
- webview->load(QUrl("http://www.baidu.com/"));
- }
- }
- Widget::~Widget()
- {
- }
然后就是编译该程序了
我自己用的编译脚本:
- #!/bin/sh
- cd /home/wangwei/qt/qt-everywhere-opensource-src-4.7.0/demos/demo
- export QT4DIR=/home/wangwei/qt/qt-everywhere-opensource-src-4.7.0
- $QT4DIR/bin/qmake -o makefile webkit.pro
- make clean
- make
这里面的demo文件夹就是上面几个文件存放的位置。
我这里表现正常,能够生成webkit文件。并且在fedora12下运行正常。
ps:刚刚学这个,记录下来,方便以后看。
http://blog.csdn.net/wangwei890702/article/details/8679976
QT Linux Demo程序编译的更多相关文章
- RPi:QT+wiringPi demo程序
一个项目里面要用到这玩意儿,网上查了几篇文章凑出来最后还是不行,自己灵机一动就成了. 今天再次搜索的时候,发现另一篇文章已经讲明白了,真是欲哭无泪 程序大部分参考的是之前学qt的摸索出来的,其实只要在 ...
- linux下程序编译出错解决方法
一 *** No rule to make target 'subscribe_pkg/CMakeFiles/subscribe_pkg_node.dir/build'. 停止.CMakeFiles/ ...
- linux信号程序编译遇到的问题
如果把这个去掉-std=c99就会运行通过 还有一点就是 for(int i=0;i<n;i++) 在循环里声明变量仅被用在c99里面.也就是要想在循环里面声明变量,就必须使用-std=c99
- linux下Qt程序编译运行
Qt程序编译运行很简单,利用Qt提供的qmake工具可以很好的进行编译,在命令行输入一下编译过程:qmake -project //声称项目文件(*.pro)qmake ...
- Linux下静态编译Qt
Qt采用编译的方式安装的时候,配置中默认的编译方式是动态编译的,但是有时候你编写的程序要发布出去,带很多动态库文件是很繁琐的,此时就需要静态编译你的程序,Qt要实现静态编译必须库文件也是静态编译的,所 ...
- Linux C程序的编译过程
Linux C程序的编译过程 学习一门语言程序,本人觉得还是得学习它的编译规则,现在,通过小例子小结下自己对C编译的认识. /*test.c 了解C程序的编译*/ #include <s ...
- 在linux环境下编译运行OpenCV程序的两种方法
原来以为在Ubuntu下安装好了OpenCV之后,自己写个简单的程序应该很容易吧,但是呢,就是为了编译一个简单的显示图片的程序我都快被弄崩溃了. 在谷歌和上StackOverFlow查看相关问题解答之 ...
- slickedit编译调试linux应用程序
目录 slickedit编译调试linux应用程序 工程建立 编译 智能报错跳转 配置编译环境 调试 title: slickedit编译调试linux应用程序 date: 2019/3/19 17: ...
- Linux源码编译安装程序
一.程序的组成部分 Linux下程序大都是由以下几部分组成: 二进制文件:也就是可以运行的程序文件 库文件:就是通常我们见到的lib目录下的文件 配置文件:这个不必多说,都知道 帮助文档:通常是我们在 ...
随机推荐
- 上传文件是常要处理的事情,使用ajaxFileUpload.js处理比较方便,这里的ajaxFileUpload.js文件修改过的,
上传文件是常要处理的事情,使用ajaxFileUpload.js处理比较方便,这里的ajaxFileUpload.js文件修改过的, Html部分 <input type="file& ...
- 在ArcEngine中使用Geoprocessing工具-执行工具
转自原文在ArcEngine中使用Geoprocessing工具-执行工具 来解析一下Geoprocessor类的Execute方法,他有两种重载,Execute(IGPProcess, ITrack ...
- (一一六)新浪微博client的离线缓存实现思路
上一节(一一五)利用NSKeyedArchiver实现随意对象转为二进制介绍了将随意对象转化为二进制数据和还原的方法.可用于实现本节介绍的微博数据离线缓存. 通过新浪官方的API能够发现,返回的微博数 ...
- Android 监听软键盘按键的三种方式
前言: 我们在Android手机上面有时候会遇到监听手机软键盘按键的时候,例如:我们在浏览器输入url完毕后可以点击软键盘右下角的“Go”按键加载url页面:在点击搜索框的时候,点击右下角的searc ...
- 【codeforces 546A】Soldier and Bananas
time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard ou ...
- 简洁常用权限系统的设计与实现(三):维护和利用节点的深度level,迭代实现树的构造
如果在节点的属性中,增加一个level属性,即树的深度,构造树会非常容易.前提是,增加和修改节点的时候,要维护level. 根节点的level为1,下一级为2,以此类推. 构造树的方法,主要有2个: ...
- 二分图之最小边覆盖(poj3020)
题目:poj3020 题意:给出一个图,让你用最少的1*2的纸片覆盖掉图中的全部*出现过的地方. 基本裸的最小边覆盖. 分析: 最小边覆盖 = 点总数 - 最大匹配 所以就是转化为求最大匹配. 跟前面 ...
- Eclipse使用异常——tomcat启动
Eclipse使用异常--tomcat启动 一:问题描写叙述 Eclipse刚上手.非常多地方与Myeclipse不一样的地方.比方tomcat的使用.真心的蛋疼. 环境:JDK7.TOMCAT7.E ...
- Babel与Polyfill的关系和区别
很多同学搞不清楚babel与polyfill的关系以及区别,这儿给大家细致解惑. Babel:Babel 是一个广泛使用的 ES6 转码器,可以将 ES6 代码转为 ES5 代码.注意:Babel 默 ...
- iOS开发 - OC - block的详解 - 基础篇
深入理解oc中的block 苹果在Mac OS X10.6 和iOS 4之后引入了block语法.这一举动对于许多OC使用者的编码风格改变很大.就我本人而言,感觉block用起来还是很爽的,但一直以来 ...