qml支持多平台的编译--尤其对于需要支持xp的情况
http://www.oschina.net/p/deepin-boot-maker
系统支持:
Windows平台:
Windows 7/ Windows 8
需要安装显卡驱动
Windows XP
需要安装显卡驱动
需要更新最新版本的DirectX
Direct X 环境安装包:
DirectX Redist Package 地址:
或者使用DirectX Runtime在线安装工具:
Linux平台:
Ubuntu12.04/Ubuntu14.04/Deepin 14.04
安装以下软件包
?
1
2
sudo apt-get install syslinux p7zip mtools libgl1-mesa-dri libx11-xcb1 libsm6 \
libxcb1 libfontconfig1 libxrender1 libpng12-0 libgl1-mesa-dev
Mac:
直接安装DMG文件
不支持Mac OS 10.10(可以使用命令行直接运行MacOS目录下的二进制文件)
开发指南
开发环境:Qt5.3 请注意以下事项: 1. 现有阶段代码主要为静态编译准备,qt5.3中的qtquick qml文件是直接打包在qrc文件中发布的,使用其他版本的qt可能导致兼容性问题。 2. 如需要动态编译版本,请注意修改代码相应位置,以后会做出相应支持。
Windows平台:
开发环境: Windows 7 64bit + msvc2010 + WinSDK 8.1+Qt5.3
1.如果准备支持Windows XP,请自行编译静态或者动态版本的Qt 5.3 with angle版本。编译参数:
?
1
2
3
4
5
6
set DXSDK_DIR="C:\Program Files (x86)\Windows Kits\8.0\Include\um"
configure -prefix "C:\Qt\QtStatic\5.3\vs2010" -release -platform win32-msvc2010 \
-no-qml-debug -confirm-license -opensource -static -qt-pcre -no-icu -no-sql-sqlite \
-no-nis -no-cups -no-iconv -no-dbus -nomake examples -no-sql-odbc -no-compile-examples \
-skip qtwebkit -skip qtwebkit-examples -skip qtactiveqt -no-openssl -qt-zlib \
-qt-libpng -qt-freetype -qt-libjpeg -opengl es2 -angle
注意: 1.不要编译icu,不然发布时会附带30M左右的icu支持的dll 2.静态编译版本,如果程序运行需要libegl相关dll,请自行编译angle。需要win7系统,msvc 2010。详细编译参数参考
2.如果不准备支持Windows XP,则可以使用官方版本的Qt with mingw 进行静态编译:
?
1
2
3
4
configure -prefix "D:\Qt\QtStatic\mingw5.3" -debug-and-release -platform win32-g++ \
-confirm-license -opensource -static -qt-pcre -no-icu -no-sql-sqlite -no-nis -no-cups \
-no-iconv -no-dbus -nomake examples -no-sql-odbc -no-compile-examples -skip qtwebkit \
-skip qtwebkit-examples -skip qtactiveqt -no-openssl -qt-zlib -no-angle -opengl desktop
Mac平台:
Macx 10.9 + Qt5.3
1.设置Qt路径
?
1
2
export QtInstallPath=/User/yourhome/Qt5.3/5.3/clang_64
export PATH=$QtInstallPath/bin:$PATH
2.编译
?
1
2
3
4
cd src
qmake -r deepin-boot-maker.pro
make
macdeployqt ../build/release/deepin-boot-maker.app
3.附加qml运行库
?
1
2
3
4
5
cp $QtInstallPath/qml/QtQuick/Dialogs/libdialogplugin.dylib ../build/release/deepin-boot-maker.app/Contents/MacOS/
cp $QtInstallPath/qml/QtQuick/Controls/libqtquickcontrolsplugin.dylib ../build/release/deepin-boot-maker.app/Contents/MacOS/
cp $QtInstallPath/qml/QtQuick/Window.2/libwindowplugin.dylib ../build/release/deepin-boot-maker.app/Contents/MacOS/
cp $QtInstallPath/qml/QtQuick.2/libqtquick2plugin.dylib ../build/release/deepin-boot-maker.app/Contents/MacOS/
cp $QtInstallPath/qml/Qt/labs/folderlistmodel/libqmlfolderlistmodelplugin.dylib ../build/release/deepin-boot-maker.app/Contents/MacOS
qml支持多平台的编译--尤其对于需要支持xp的情况的更多相关文章
- [渣译文] SignalR 2.0 系列: 支持的平台
原文:[渣译文] SignalR 2.0 系列: 支持的平台 英文渣水平,大伙凑合着看吧,并不是逐字翻译的…… 这是微软官方SignalR 2.0教程Getting Started with ASP. ...
- Mac系统下编译支持Android平台的最新X264编码器
Mac系统下编译支持Android平台的最新X264编码器 原文来自 http://www.mingjianhua.com,转载请注明出处 1.首先去官网下载最新的x264源代码,解压到任意目录 ht ...
- 实战FFmpeg--编译iOS平台使用的FFmpeg库(支持arm64的FFmpeg2.6.2)
编译环境:Mac OS X 10.10.2 ,Xcode 6.3 iOS SDK 8.3 FFmpeg库的下载地址是 http://www.ffmpeg.org/releases/ . ...
- .NET支持多平台后的一点拙见
我们目前对.NET的理解大部分可以归纳为:起初它是Java平台(注意是平台,不要跟Java语言搞混淆)的一个克隆品,后来慢慢演变,有了自己的特性.由于Java平台最显著的特点就是“平台独立性”(或者说 ...
- x86平台转x64平台关于内联汇编不再支持的解决
x86平台转x64平台关于内联汇编不再支持的解决 2011/08/25 把自己碰到的问题以及解决方法给记录下来,留着备用! 工具:VS2005 编译器:cl.exe(X86 C/C+ ...
- ndk 编译 boost 库,支持serialization
Boost库是一个可移植.提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一. Boost库由C++标准委员会库工作组成员发起,其中有些内容有望成为下一代C++标准库内容.在C+ ...
- QT全平台设置图标,全平台静态编译 good
1. 概述 当我们用QT写好了一个软件,要把你的程序分享出去的时候,不可能把编译的目录拷贝给别人去运行.编译好的程序应该是一个主程序,加一些资源文件,再加一些动态链接库,高大上一些的还可以做一个安装 ...
- WebService支持多平台上传文件的实现
WebService支持多平台上传文件的实现 要使用网站上传文件,在ASP.NET的范畴,我基本上能想到的有两类,一类是通过HTTP POST请求获得文件信息,另外一类是通过WebService或 ...
- WebKit 在 Windows 平台下编译小结
虽然WebKit 已经越来越多的被广大程序员接受,但其编译过程却非常之痛苦.下面将我编译WebKit 代码的经验与大家分享. 1) 获取WebKit 源代码 WebKit 源代码是使用Subversi ...
随机推荐
- iOS - Swift NSRect 位置和尺寸
前言 结构体,这个结构体用来表示事物的坐标点和宽高度. public typealias NSRect = CGRect public struct CGRect { public var origi ...
- CXF WebService 开发文档
参考资料: 1. http://cxf.apache.org/docs/ 2. http://www.cnblogs.com/hoojo/archive/2011/03/30/1999587.html ...
- org.apache.jasper.JasperException: Expecting "jsp:param" standard action with "name" and "value" attributes
jasper 英 ['dʒæspə] 美 ['dʒæspɚ] 跟读 口语练习 n. 碧玉:墨绿色 n. (Jasper)人名:(德)雅斯佩尔:(西)哈斯佩尔 JasperException 异 ...
- elastic
学习链接 http://rfyiamcool.blog.51cto.com/1030776/1420811?utm_source=tuicool&utm_medium=referral
- 用Jquery获取select的value和text值
$("#select_id").change(function(){//code...}); //为Select添加事件,当选择其中一项时触发 var checkText=$(&q ...
- Android Menu菜单使用
如上图右上角,菜单选项的编辑,第一种代码实现方式如下: package com.example.menu; import android.os.Bundle; import android.app.A ...
- awt组件中文乱码Intellij解决
-Dfile.encoding=GB18030 -Dfile.encoding=GB18030
- 关于php的一些小知识
浏览目录: 一.PHP的背景和优势: 二.PHP原理简介: 三.PHP运行环境配置: 四.编写简单的PHP代码以及测试. 一.PHP的背景和优势 1.1 什么是PHP? PHP是能让你生成动态网页 ...
- 关于协程的学习 & 线程栈默认10M
先看的这篇文章:http://blog.csdn.net/qq910894904/article/details/41699541 以nginx为代表的事件驱动的异步server正在横扫天下,那么事件 ...
- linux登录mysql
mysql -u 用户名 -p密码 mysql -u root -psqj888