• 5514阅读
  • 4回复

寻求帮助(希望大神能编译一个angle版本的qt5.1.1) [复制链接]

上一主题 下一主题
离线angelus
 

只看楼主 倒序阅读 楼主  发表于: 2013-09-12
因为qml2 的程序必须跑到OPENGL 3.0以上的机器上,但很多机器没办法支持到3.0
查看资料发现可以折中,编译angle版本,把opengl es 2.0 api 映射到DriectX 9.0上,这样就能在老机器上跑去来了,只要支持9.0就可以、

但官方只提供了opengl版本,没有angle版本的,所以希望大神能编译一个mingw的angle版本、

现在需要平台为winxp,win7  32位系统!

非常感谢!




1、下载ActivePerl、mingw、python、ruby,安装时注意勾选“添加...PATH环境变量”的选项。下载Qt源代码(我下载时最新是5.1),解压。

2、下载DirectX SDK 9,安装到最后如果提示出错,进入控制面板,把Microsoft Visual C++ 2010 Redistributable之类的卸载掉,重装DirectX。

3、 做好以上准备工作后,在所有程序菜单中打开minGW的Run terminal菜单,打开minGW的命令行窗口,打入sh.exe验证sh.exe是否存在,如果存在,要在PATH去掉sh.exe的路径,重开minGW,否则继续下一步。

4、设置DirectX SDK的路径,输入命令:
set DXSDK_DIR=C:\Program Files\Microsoft DirectX SDK\
注意结尾的 \ 是必须的,否则在编译时出现错误。这是Qt编译工程的一个小BUG。

5、cd到Qt源代码,执行
configure -developer-build -opensource -nomake examples -nomake tests -debug-and-release -opengl es2 -angle搞了半天,其实就是加了加上-opengl es2 -angle这个选项。(为什么官网不直接提供呢?)
6、如果没出错的话,开始编译,执行:
mingw32-make -S -j2
2表示使用两个核来编译,加快编译速度,视情况而设。
以上为编译过程,但我不会操作!

configure -developer-build -opensource -nomake examples -nomake tests -debug-and-release -opengl es2 -angle
再一次感谢!真的非常需要!

离线adonais

只看该作者 1楼 发表于: 2013-09-13
离线angelus

只看该作者 2楼 发表于: 2013-09-16
回 1楼(adonais) 的帖子
那个版本问题太多了,我试了很多次,都不行,最后还是是用VS2010版本弄了。
就是要下个2010比较麻烦,但最小化安装,只适用VC编译器就行了。

在opengl 1.4版本的机器下,成功运行QML2.0。
以后也不用担心部署的机器不支持opengl2.1以上的版本了!
离线adonais

只看该作者 3楼 发表于: 2013-09-16
这不是编译版的问题. 你使用官方版本不需要找依赖的dll是因为它都加入到系统环境变量里面去了.
你到别的机子运行还是一样要手动找出来打包.
离线angelus

只看该作者 4楼 发表于: 2013-09-17
回 3楼(adonais) 的帖子
我用那个移动版编写了个很简单的qml2程序,把需要的DLL全部都放到一起,然后放到其他机器上,运行都是白屏的。
自己编译angle版编译可以过,安装就会再V8出错,没办法,智能用2010版本的,然后安装个VS2010,qt就可以使用VC当编译器。
测试是可以使用的,就是效率会没有OPENGL版本的高,但可以在旧机器上运行,性能牺牲很值得!
快速回复
限100 字节
 
上一个 下一个