红联Linux门户
Linux帮助

利用qmake来为15.04及以上target创建Ubuntu应用项目

发布时间:2015-05-06 15:09:27来源:blog.csdn.net/ubuntutouch作者:Ubuntu手机

我们知道qmake是Qt最原生的跨平台编译工具。由于一些原因,在Ubuntu手机14.10上,广泛使用CMake以跨不同平台。事实上,在Qt Creator上,如果我们使用qmake,我们可以更加方便地管理我们的项目。比如:

我们可以在项目中使用点击右鼠标键来添加或删除文件。在CMake项目中,我们只能进行添加的动作

在新的模版中加入了使用“main()”的入口,这样可以很方便地让我们的项目编译成为binary。对那些希望把自己的代码进行保护的开发者来说,这无疑是个好的方案

对文件的部署来说,qmake比CMake方便得多。开发者们可以研究一下项目管理文件.pro

注意:开发者也可以在14.10的Desktop上创建qmake项目,但是它的运行必须是在15.04的目标上(比如15.04的手机或15.04的模拟器上)。当然生产的click包可以除外(只要没有使用Qt 5.4中的新的features)。注:15.04系统使用的Qt 5.4,14.10使用的是Qt 5.3。


1)创建一个最基本的QML qmake项目

打开SDK,并按照如下的步骤来创建项目:

利用qmake来为15.04及以上target创建Ubuntu应用项目

我们可以和以前一样的方法来运行我们的项目 (使用热键 Ctrl + R):

利用qmake来为15.04及以上target创建Ubuntu应用项目

删除文件:

利用qmake来为15.04及以上target创建Ubuntu应用项目

在14.10的armhf Kit下运行qmake项目:

利用qmake来为15.04及以上target创建Ubuntu应用项目

在15.04的手机中运行:

利用qmake来为15.04及以上target创建Ubuntu应用项目

click文件包的内容如下:

利用qmake来为15.04及以上target创建Ubuntu应用项目

在上面的包中,我们可以看到有“Main.qml”文件在其中。也就是说,任何人可以获取这个内容只有把click进行重新打开即可。

创建的源码在:git clone https://gitcafe.com/ubuntu/qmaketest.git


2)创建一个QtQuick的应用

利用同样的方法,我们使用SDK按照一下的方式:

利用qmake来为15.04及以上target创建Ubuntu应用项目

我们可以看出来在项目中有一个叫做“main.cpp”文件。

#include <QGuiApplication> 
#include <QQmlApplicationEngine> 
#include <QQuickView> 
int main(int argc, char *argv[]) 

QGuiApplication app(argc, argv); 
QQuickView view; 
view.setSource(QUrl(QStringLiteral("qrc:///Main.qml"))); 
view.setResizeMode(QQuickView::SizeRootObjectToView); 
view.show(); 
return app.exec(); 

这个文件用来启动我们的QML文件“Main.qml”。整个的QML文件被放置于一个叫做“qtquicktest.qrc”的资源文件中。这个文件将被变成最终binary的一部分,而不被其它文件看见。

最终的生产文件为qtquicktest。这个在“qtquicktest.pro”中被定义:

TEMPLATE = app 
TARGET = qtquicktest 


我们可以把最终的click包的内容展开如下:

利用qmake来为15.04及以上target创建Ubuntu应用项目

在这里,我们可以看到一个叫做“./lib/arm-linux-gnueabihf/bin/qtquicktest”文件。这个就是我们的执行文件。我们看不见任何的QML文件。运行应用:

利用qmake来为15.04及以上target创建Ubuntu应用项目

所有的源码在:git clone https://gitcafe.com/ubuntu/qtquicktest.git


相关文章:
试用Ubuntu Kylin 15.04 64位操作系统体会:http://www.linuxdiyf.com/linux/11956.html

看了Ubuntu GNOME 15.04自带的地图,你想说什么?:http://www.linuxdiyf.com/linux/11960.html

Fedora安装Qt4后qmake自动连接至Qt3的解决办法:http://www.linuxdiyf.com/linux/10976.html