Qt的打包安装程序在OSX上将东西分散到/Developer和/Library目录中,而不像其他基于Unix的系统一样安装到自包含位置/usr/local或/opt/local。顺便说一下,Qt在这方面遵循苹果的做法,因此它并没有错 - 它只是不同 - 但这确实使得某些第三方Qt应用程序在OSX上构建起来有些困难。打包的Qt安装程序本身在这个主题上有以下内容:
“成功安装后,您可以在/Developer中找到大多数新内容。具体而言,内容将位于以下位置:
Qt Designer、Qt Linguist:/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头文件。
绕过所有这些的最简单方法是从源代码构建Qt。安装位置的默认值将类似于/usr/local/Trolltech/Qt-4.6.3
(请注意版本号,并进行相应调整)。您可以通过在./configure
上使用-prefix
选项来覆盖默认安装位置。
一个更简单的方法是让macports为您构建它。这是我最终采取的方法(也很成功)。如果您还没有安装,请先安装macports。然后执行以下操作:
> sudo port selfupdate
> sudo port install qt4-mac
Macports会发挥它的魔力,完成后Qt将完整安装在/opt/local/libexec/qt4-mac
。
无论你如何构建Qt,都需要准备数小时的时间来进行完整构建。这是一个非常庞大的代码库。