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 ...
随机推荐
- php笔记[1]
1:echo '$temp tires<br />'; 该代码将'$temp tires<br />'发送给浏览器,在双引号中,变量名将被变量值所替代.而在单引号中,变量名称, ...
- spring注入简记
我们知道对象是交给容器来管理的那么 init() destroy():可以在bean配置中设置对象初识化前执行和销毁后执行 int-delay=""表示是否延迟实例化即容器实例时还 ...
- chrome离线安装包_下载
ZC: 如何下载的文章 参考:“https://www.tekrevue.com/tip/download-chrome-offline-installer/” 1. f/q 2.下载网址: 2.1. ...
- mysql 查询开销
1.select @@profiling;2.set @@session.profiling=on;3.show profiles;4.show profile for query 2;
- linux下,一些关于动态库的问题:
程序运行是加载动态库的几种方法: 第一种,通过ldconfig命令 ldconfig是一个动态链接库管理命令,为了让动态链接库为系统所共享,还需运行动态链接库的管理命令它,ldconfig命令通 ...
- JavaSE复习_9 集合框架复习
△列表迭代器也是不支持在迭代的时候添加元素的,只是列表迭代器自己定义了增删的方法而已.迭代器可以看成实在两个元素之间的指针,每当调用next就跳过一个元素并返回刚刚跳过的元素. △HashTable不 ...
- openfire升级指南
原文:http://www.liuhaihua.cn/archives/355.html 升级Openfire是和从头开始安装Openfire几乎一样简单.作为升级过程的一部分,它强烈建议您先备份当前 ...
- final运用于内部类访问局部变量
final运用于内部类访问局部变量 public void mRun( final String name){ new Runnable() { @Override public void run() ...
- Sqlserver_In、exists使用
in是把外表和内表作hash 连接,而exists 是对外表作loop 循环,每次loop 循环再对内表进行查询. 一直以来认为exists 比in 效率高的说法是不准确的.如果查询的两个表大小相当, ...
- js倒计时 网上流传最多的
<!DOCTYPE html><html><head><script src="http://libs.baidu.com/jquery/1.10. ...