查看完整版本: [-- 细数Qt开发的各种坑(欢迎围观) --]

QTCN开发网 -> Qt安装与发布 -> 细数Qt开发的各种坑(欢迎围观) [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

liudianwu 2016-12-16 09:34

细数Qt开发的各种坑(欢迎围观)

1:Qt的版本多到你数都数不清,多到你开始怀疑人生。从4.6开始到5.8,从MSVC编译器到MINGW编译器,从32位到64位,从Windows到Linux到MAC。MSVC版本还必须安装对应的VS2005 VS2008 VS2010 VS2013 VS2015,MINGW版本必须安装不小于某个版本号的Mingw编译器。很多人一看官网的下载链接,就蒙圈了,到底应该选择哪一个进行下载开发呢。本人就在四块硬盘上安装了七八个操作系统安装了十几个Qt开发环境。

2:Qt各种乱码问题(不只是Qt的问题,这是IT界的问题,什么utf-8带BOM,什么MSVC默认是GBK编码,什么回车换行符\r\n),困扰Qter一生,有时候解决了界面乱码,输出又出乱码了,解决了输出乱码,界面又乱码了,打印也乱码,显示的那些火星文他妈的谁懂啊,坑爹坑死你。

3:Qt4到Qt5版本的巨大改动,让很多Qt4时代的代码不能正常在Qt5环境中编译,导致网上各种初学者下载到的Qt4代码编译没有一个通过的人丧失信心,甚至又开始怀疑人生,网上都是骗人的又一次浮现脑海。

4:为了能够做到开发跨平台应用,不得不安装几块硬盘,安装七八个操作系统,虚拟机的坑使得必须安装真机环境才能测试出真实效果,最基本的你必须安装windows XP,WIN7 32位 64位,WIN8,WIN8.1 WIN10 32位 64位,ubuntu 14.04 15.04 16.04,S3C6410 335 A8 A9各种交叉编译环境,还得单独安装一个干净的XP或者WIN7用于开发android(本人试过N次,在原有的安装了很多东西的电脑上搭建Qt android开发环境死活不成功,必须全新安装的操作系统才可以,所以单独搞了一块硬盘用来Qt开发android)。

5:Qt发布也困扰了不少的初学者,尤其是高达几十兆的运行库文件,更是崩溃至极,不是提示缺少某个文件,就是那边少了数据库插件,甚至蹦蹦蹦的弹框,最可恨可气无奈的是,明明某些电脑可以正常运行,某些电脑死活跑不成功。

6:Qt内置方法的变动,让一些喜欢追逐新版本Qt开发环境的Qter们抓耳挠腮,一下子toAscii,一下子就没了,一下子QSound在QtGUI,一下子移到了multimedia中,打印也是,其他的就不细数了。高版本开发环境居然不兼容低版本,这可是犯了大忌啊。

7:QML兼容性巨坑,各种的不稳定,直到5.7版本开始才好点,很多老式电脑无法正常运行,那个QML设计器更是惨不忍睹无法直视,字体细小难看,还必须放大镜才能看清是什么,既然做了就做好点,不然怎么让开发者用呢,QML开发的商业产品或者作品,到现在也没有看到几个好的,移动端的更加稀少。没有看到一个让人惊艳的作品。

8:浏览器内核变来变去,以前webkit好好的,后面居然抛弃了,我勒个去,始乱终弃啊!你让以前依赖webkit内核的项目怎么换啊,改来改去的。

uidab 2016-12-16 16:31
哈哈,中文乱码累死。代码里都搞成utf8了,没问题了,读数据库又出问题。还要转来转去。哈哈哈哈!!

sevencat 2016-12-17 15:11
还好的,只是一些api的变化,4->5这种大版本肯定有api变化的。其他的都没什么大问题,有办法解决。
至于 说
装windows XP,WIN7 32位 64位,WIN8,WIN8.1 WIN10 32位 64位这个有点凑字数了,这些用来测试的吧,你只编译一种32位的不就得了。

圣域天子 2016-12-19 08:41
现在Qt都到5.7.1了,我开始担心6.0了,会不会也和5.x有巨大的差异

15145093145 2016-12-19 08:52
这些问题是新手们会遇到的, 解决就好了。

liudianwu 2016-12-19 10:21
圣域天子:现在Qt都到5.7.1了,我开始担心6.0了,会不会也和5.x有巨大的差异[表情]  (2016-12-19 08:41) 

很有可能,估计Qt6才是真正完美支持移动开发的开始。

return 2016-12-20 09:50
  

listen342325 2016-12-20 10:12
同样担心如下问题,那就学的蛋疼了。

现在Qt都到5.7.1了,我开始担心6.0了,会不会也和5.x有巨大的差异.

hzm000000 2016-12-20 10:21
希望刘工可以多出一些类似此篇文章的Qt开发心得!一直都顶您!

圣域天子 2016-12-20 16:50
对了,有个QtWin 的BUG,如果主窗自定义无标题框,自绘时会冲突,从5.5到5.7一直存在这个问题。
之前和之后的版本不知道

bs1003506507 2016-12-25 01:56
新手路过.....

shf1986 2017-01-11 14:12
qt更新太快,感觉还是稳定住,修补bug最好......

唯有小天 2017-01-20 09:52
请教:如何用QT开发界面库给VS2008这样的开发平台调用?我用VS2008开发的库可以被QT Creator调用。

qing11 2017-02-06 13:49
初学者

weinkym 2017-02-06 15:29
一路走来,上面的坑基本都踩过了

artlands 2017-02-20 11:02
Qt开发团队表示看不懂中文,看不到你的意见

amwssy 2017-05-07 06:32
拜读了

XChinux 2017-05-07 17:16
Qt编译版本众多,加上webkit问题,加上64位问题,加上mingw问题,这windows下安装至少3个版本啊,太占空间了。

fish0619 2017-06-29 15:41
1. 我一般盯着一个 Qt 版本进行开发。只要没有功能需求,我就不太喜欢升级 Qt 版本。同样的,我也不会总是升级 visual c++ 版本。几年升级一次,能用就差不多了。
2. 使用 mingw 容易发布。但太多 windows 的 cpp 库只能使用 msvc 来编译。
3. 希望 Qt6 不要太快来,不然又有得折腾了。真希望 KDE 不要把时间花在跟 Qt 的升级上面。不然现在就可以用到更好用的 KDE 了。
4. 搞个 windows/linux 不就行了。android 直接使用真机测试嘛。
5. distribution 确实是坑。但哪个 cpp 软件不是呢。Windows 软件都要填 vcredist 这个坑。而且有了 windeployqt.exe 以后,Qt 的布署简单了很多。
6. trUtf8() 也不能用了!!
7. QML 确实是不行啊。我现在还是只用 Qt 的 C++ 部分。但是 QtWidgets 最近的升级真是太少了。要是有 Android 的布局管理器就好了。也希望 QtWidgets 能够支持移动界面的手势。
8. WebEngine 就是 rubbish

下半身的尊严 2017-07-24 10:31
新手表示,刚用QT时,差点被各种安装吓傻了

twodiamond 2017-08-23 17:33
一直以来都是用Qt4.8.5,也只是做一些GUI和通信类的基本嵌入式应用,忽然Qt5.9.1来了,心里反而忐忑起来了:
到底要不要跟呢?Qt4.8.5虽说基本能满足应用,但QTextSerial、Qwt都需要采用第三方的,而且据说Qt5.8.0(本身是过渡性质的)以后,启动速度加快了(基于Qt4.8.5产品不能满足客户的启动速度);自带Qt Chart;从官方声明来看,Qt5.9是LST版本。


请问各位大佬:到底要不要切换呢?


谢谢!

kaon 2017-08-23 22:13
4->5肯定要升的,信号槽语法的改变就会爽不少,
保留几个lts版本。。需要xp就5.6,不需要就5.9,然后再保留一个最新版,比如即将出的5.10

twodiamond 2017-08-24 15:52
kaon:4->5肯定要升的,信号槽语法的改变就会爽不少,
保留几个lts版本。。需要xp就5.6,不需要就5.9,然后再保留一个最新版,比如即将出的5.10 (2017-08-23 22:13) 

嗯,这个建议不错!!!


查看完整版本: [-- 细数Qt开发的各种坑(欢迎围观) --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled