Qt 的 OSX 打包安装程序将内容分散在 /Developer 和 /Library 目录中,而不是安装到 /usr/local 或 /opt/local 中的独立位置,就像您可能期望在其他基于 unix 的系统上所做的那样。
顺便说一句,Qt 在这方面遵循了 Apple 的做事方式,所以这并没有错——只是不同而已——但它确实使一些第 3 方 Qt 应用程序在 OSX 上构建起来有些困难。
打包的 Qt 安装程序本身对这个主题有以下说法:
成功安装后,您可以在 /Developer 中找到大多数新内容。具体的东西将位于以下地方:
- Qt 设计师、Qt 语言学家:/Developer/Applications/Qt
- Qt 文档:/Developer/Documentation/Qt
- Qt 示例:/Developer/Examples/Qt
- Qt 插件:/Developer/Applications/Qt/Plugins
- Qt 框架:/Library/Frameworks
- Qt 库:/usr/lib
- qmake、moc、uic 等:/Developer/Tools/Qt(到 /usr/bin 的符号链接)
- 卸载脚本:/Developer/Tools/uninstall-qt.py
因此,它确实将库放入“/usr/lib”,并将基本的 Qt 工具(如 qmake)符号链接到“/usr/bin”。这表明 QTDIR 可以设置为“/usr”。然而在实践中,这不起作用,因为 qt 头文件仍然隐藏在 '/Library/Frameworks/Qt*/Headers/*.h' 中,而依赖于 $QTDIR 的构建最终会在 "$ {QTDIR}/include/" 代替。
解决这一切的最简单方法是从源代码构建 Qt。安装位置将默认为/usr/local/Trolltech/Qt-4.6.3
(注意版本号,并进行相应调整)。您可以使用 上的-prefix
选项覆盖默认安装位置./configure
。
更简单的方法是让macports为您构建它。这是我最终采用的方法(并且取得了很好的成功)。只需安装 macports,如果您还没有它。然后:
> sudo port selfupdate
> sudo port install qt4-mac
Macports 将发挥它的魔力,当它完成后,Qt 将被完整地安装在/opt/local/libexec/qt4-mac
.
无论您如何构建 Qt,预计完整构建需要几个小时。这是一个非常大的代码库。