Qt 4.8.x 升级到Qt5.x的各种坑

Qt 4.8.x 升级到Qt5.x的各种坑

Qt5 已易主, 脑残的事情也干的越来越多.

看qt下载页的Qt的windows版本默认提供32位和64位, 那个啥opengl版暂时未理会

因为本人系统是win7 64bit, 因此毫无理由的下载了64位的qt5.2版本. 编译了hello world, 结果报错:

module machine type 'x64' conflicts with target machine type 'X86'

找了半天没查到错误, 后面注意到vs2012的工程编译类型选择的是win32 x86, 才想起是由于qt5的所有lib是64位编译, 而我使用32位的程序去链接, 当然要报错.

重新下载32位的qt5.2, 编译正确

 

另外一个错误也是在前面版本极为少见的:

fatal error C1083: Cannot open include file: ’GLES2/gl2.h’: No such file or directory

很多人的解决方法是包含QtANGLE下的gles2目录, 但是由于我的工程内的cocos2dx本身也带有这东西. 于是研究了下为啥这版本的qt默认要搞的非要和gles有关系

最终, 发现可以通过定义QT_NO_OPENGL宏来屏蔽opengl的渲染API使用, 编译通过

 

很是怀念诺基亚时代的qt, 下载,编译一气呵成

你可能感兴趣的:(Qt 4.8.x 升级到Qt5.x的各种坑)