如何为mac el capitan 安装qt4?

Posted

技术标签:

【中文标题】如何为mac el capitan 安装qt4?【英文标题】:How to install qt4 for mac el capitan? 【发布时间】:2017-02-03 06:44:03 【问题描述】:

我已尝试从(4.7 和 4.8.5)等档案中下载 qt4 dmg 文件。它们不起作用,在安装过程中它说,This package is incompatible with this version of OS X and may fail to install.

然后我遇到了这个论坛post,上面说我需要自己编译。我自己也不知道怎么编译。

我真的很困惑如何做到这一点,欢迎任何帮助。

【问题讨论】:

我通过 Homebrew 安装了 qt4。 @el.pescado 你是怎么做到的? brew search qt 没有列出 qt4。 过程完成,但没有安装任何东西。你怎么知道的?它应该工作。试试sudo port install qt4-mac && echo OK。如果“OK”打印出来,你应该将 Qt4 安装到 /opt/local/libexec/qt4/bin/qmake 等。试试 port contents qt4-mac 看看那里有什么。您应该能够运行 Qt4 的 Designer 等。 @KubaOber 我的立场是正确的。它确实将qmake 文件放入/opt/local/libexec/qt4/bin 您需要编辑这个问题以指出真正的问题,并搜索它是否不是重复的。你也应该问一些没有任何假设的问题:当 cmake 没有找到 Qt 时你遇到了麻烦,但你没有透露它。 【参考方案1】:

我自己也不知道怎么编译。

要自己编译,您需要安装 Xcode,并配置 Xcode command line tools(您可以通过在终端中键入命令 g++ 来测试命令行工具是否可用;如果显示“错误:没有输入文件”,它们被安装;如果它说“找不到命令”,它们不是)。

一旦你解决了这个问题,你需要做这样的事情:

    下载带有 Unix 风格行结尾的 Qt4.x 源代码存档(例如 qt-everywhere-opensource-src-4.8.7.ta​​r.gz ;如果可以,请避免使用 .zip 版本,因为 .cpp 文件在.zip 版本具有 Windows 风格的行尾,这会使 Mac 上的事情变得复杂) 解压存档(如果 Safari 还没有为您解压;例如 tar xzvf qt-everywhere-opensource-src-4.8.7.ta​​r.gz ),然后将 qt-everywhere-opensource-src 文件夹移动到方便的地方(例如到您的主目录)。 cd 进入 qt-everywhere-opensource-src-4.8.7 文件夹 导出 QTDIR=`pwd` 导出 PATH=$PATH:$QTDIR/bin ./配置 制作

请注意,由于 4.x 源代码太旧,某些 .cpp 文件可能无法在较新版本的 MacOS/X 下编译。如果发生这种情况,您将不得不手动编辑无法编译的 .cpp 文件以调整它们以便它们能够编译,然后再次运行 make - 要修复 .cpp 文件,您必须了解足够多的知识C++ 来了解什么是错误的以及如何修复它,尽管在某些情况下你可以只用谷歌搜索错误消息并找出其他人做了什么来修复有问题的错误。如果所有其他方法都失败了,您可以随时注释掉错误所在的行,并希望它们对您正在做的事情不重要......

当然,这一切都是痛苦和困难的,所以如果您在这件事上有任何选择,我建议您下载最新的 Qt 5.x 存档(5.8.0?)并使用它。如果您尝试将旧的 Qt 版本硬塞到新的 MacOS/X 版本中,您将获得比现在更轻松的体验。

【讨论】:

是的,你是对的。它没有正确安装并显示一堆警告和错误。 MacPorts 具有在现代 OS X 版本上构建 Qt 4 所需的 大量 补丁和支持。请参阅 the portfile patch list 和 patches themselves

以上是关于如何为mac el capitan 安装qt4?的主要内容,如果未能解决你的问题,请参考以下文章

制作 Mac OS X El Capitan 的U盘引导安装

Mac OS X El Capitan10.11 系统安装教程

如何安装最新版本的 openssl Mac OS X El Capitan

RVM:在 Mac OSX El Capitan 上安装最新版本的 ruby​​ 失败

在 Mac OS X El Capitan 10.11.4 上安装 MySQL 5.7

在 mac el capitan 上的 xampp 上的 xdebug