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目录下的文件 配置文件:这个不必多说,都知道 帮助文档:通常是我们在 ...
随机推荐
- CCPC2016长春站打铁记
Day0 晚上到的长春.很冷.到了宾馆.放了行李.然后就去吃了点火锅.很好吃.在福建吃的都没有酱.但是回去后有点拉肚子..几个队友也有同样的反应.路过了吉大.拍了一张照片.哎.压力好大. Day1 来 ...
- html5如何实现元素拖放
html5如何实现元素拖放 一.总结 一句话总结:参考文档里面有各种想象不到的好东西.一边允许拖放,一边接收拖放,一边传递数据,一边接收数据.拖放过程还要防止拖放以默认方式(链接)打开. 1.html ...
- [SVG] Add an SVG as an Embedded Background Image
Learn how to set an elements background image to embedded SVG. This method has an added benefit of n ...
- SecureCRT连接虚拟机中的Linux
如何使用SecureCRT连接虚拟机中的Linux https://jingyan.baidu.com/article/574c52191eb9996c8c9dc16a.html?st=5&n ...
- markdown模式的一些语法
Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 简书支持程序员写技术博客的模式,Markdown具有一系列衍生版本,用于扩展Mar ...
- sql server中的TimeStamp时间戳与UniqueIdentifier数据类型
TimeStamp SQL Server timestamp 数据类型与时间和日期无关.SQL Server timestamp 是二进制数字,它表明数据库中数据修改发生的相对顺序.实现 timest ...
- NET Framework、.NET Core、Xamarin
认识.NET Core 上篇介绍了.NET 新的生态环境:包括.NET Framework..NET Core.Xamarin三驾马车 其中.NET Framework是基于Windows平台专属的开 ...
- uml 类图依赖与关联的区别
类与类之间由弱到强关系是: 没关系 < 依赖 < 关联 < 聚合 < 组合. 1.依赖(dependency) 可以简单的理解,就是一个类A使用到了另一个类B,而这种使用 ...
- 解决:eth0安装插卡无法自己主动,网卡的配置信息不network-scripts于
问题方案:eth0安装插卡无法自己主动,网卡的配置信息不network-scripts于 解决: 1>vi /etc/rc.d/rc.loacl 最后加 ifup eth0 2>reboo ...
- Struts2中文件的上传与下载
文件上传 1.jsp页面 <s:form action="fileAction" namespace="/file" method="POST& ...