赞
踩
一直在windows/linux下做QT开发,今儿个体验下QT在mac下的酷炫效果。
一. 下载QT5 for mac
图形化界面,点击下一步。
二. 配置环境变量
依旧更新~/.bash_profile文件,默认情况下该文件不存在。这与linux基本上一致。
- vi ~/.bash_profile
- export QTDIR=/Users/my/Qt5.7.0/5.7/clang_64
- export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
- export PATH=$QTDIR/bin:$PATH
- source ~/.bash_profile
运行qmake,打印帮助信息。至此QT配置成功。
- lingdeMacBook-Pro:mac lingsun$ qmake -v
- QMake version 3.0
- Using Qt version 5.7.0 in /Users/my/Qt5.7.0/5.7/clang_64/lib
三. 测试
进行QT Example目录,随便找个工程编译下。
- cd /Users/my/Qt5.7.0/Examples/Qt-5.7/charts/areachart #柱状图示例
- qmake #生成makefile
- make
执行报错:
Project ERROR: Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild.
stackoverflow 搜索到的解决方案,亲测可行:
- sudo xcode-select -switch /Applications/Xcode.app/Contents/Developer/ #指定xcode路径
- sudo xcodebuild -license #同意license
编译仍然报上述错误,修改default_pre.prf定位到出错行L15。
- vi /Users/my/Qt5.7.0/5.7/clang_64/mkspecs/features/mac/default_pre.prf
-
- isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null")))
-
- 替换为:
-
- isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null")))
apple认为GCC太过于庞大,而使用的是自家开发的clang编译器。
重新编译,在当前目录生成 areachart.app。
open -a areachart.app # 执行程序
运行结果:
四. QtCreator
QtCreator需设置QT版本,编译器等参数。
五. xcode
mac上有xcode如此高大上的IDE,怎能弃之不用呢。可用qmake生成xcode工程。
- lingdeMacBook-Pro:~ lingsun$ qmake -project #生成pro
- lingdeMacBook-Pro:~ lingsun$ qmake -spec macx-xcode #生成xcode工程
- lingdeMacBook-Pro:~ lingsun$ open widget.xcodeproj #打开xcode工程
编译效果:
六. 注意事项
6.1 中文乱码
windows下源码文件以GBK方式编码,中文在MAC下显示会有乱码出现,将源码保存为UTF-8,重新编译中文能正常显示。
6.2 程序图标
app 图标在不同平台下设置不同,MAC下显示ICON字段,指定*.icns图片,MAC向来特立特行,连图片都跟其它平台不同。icns图片可通过 iconutil 命令生成。
- win32{
- RC_FILE = ico/app.rc
- }else{
- ICON = ico/app.icns
- }
6.3 跨平台UI
在MAC下重新编译QT项目,一行代码都不用修改。界面效果对比:
windows:
mac:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。