声明:本文在原文http://xstarcd.github.io/wiki/MacOS/MacOS_MacPorts.html的基础上,做了大量修改,使得更为详细。
MacOS除了用dmg、pkg来安装软件外,比较方便的还有用MacPorts来帮助你安装其他应用程序,跟BSD中的ports道理一样。MacPorts就像apt-get、yum一样,可以快速安装些软件。
下面将MacPorts的安装和使用方法记录在这里以备查。
先安装好Xcode和Command Tools
再Agree to Xcode license in Terminal: sudo xcodebuild -license
Mac下安装很大概率会出现MacPorts卡住的现象,界面停留在“正在运行软件包脚本”。原因是默认的那个源有问题(什么问题不清楚),所以最后一步卡在selfupdate那里。解决办法:
https://blog.csdn.net/qq285744011/article/details/88924070
MacOS-访达-前往-前往文件夹-/etc/profile,使用Sublime Text打开profile文件;
然后将/opt/local/bin和/opt/local/sbin添加到$PATH搜索路径中,即把以下两行文本添加到/etc/profile文件的尾巴:
export PATH=/opt/local/bin:$PATH
export PATH=/opt/local/sbin:$PATH
终端命令输入port -v
为了提高安装速度,可以在安装新port时直接将此目录下的文件拷贝到新的Mac Port相同的目录中就可以避免Port去网上下载。
使用命令之前,先把镜像源替换为国内的,否则下载不了。
MacOS-访达-前往-前往文件夹-/opt/local/etc/macports/-使用Sublime Text打开sources.conf,修改如下:
# rsync://rsync.macports.org/macports/release/tarballs/ports.tar [default]
rsync://pek.cn.rsync.macports.org/macports/release/tarballs/ports.tar [default]
完整的镜像链接可以在 https://trac.macports.org/wiki/Mirrors 查询
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
|
1、笔者的Mac OS版本是MacOS-10.15-Catalina,高版本的OS和Clang已经不再支持Qt官方发布的Qt4了。
MacOS终端命令sw_vers可以查看Mac OS版本
MacOS终端命令clang --version可以查看clang版本
MacOS终端命令llvm-config --version可以查看llvm版本
MacOS终端命令which llvm-config可以查看llvm安装的路径
2、使用macports可以实现qt4.8.7的安装
Mac终端命令
sudo port install qt4-mac
sudo port clean --all qt4-mac
如果安装成功的话,会显示:
---> Scanning binaries for linking errors
---> No broken files found.
下载的压缩包统一放在路径:
/opt/local/var/macports/software
Qt4.8.7最终会生成以下文件夹和文件:
/Applications/MacPorts/Qt4
/opt/local/var/macports/software/qt4-mac/qt4-mac-4.8.7_10.darwin_19.x86_64.tbz2
把qt4-mac-4.8.7_10.darwin_19.x86_64.tbz2拷贝出来,并解压到指定路径即可,里面有编译好的二进制文件和库。
3、Qt 4.8.7和笔者已有的Qt 5.12.5不冲突,可以共存。
Qt4的IDE--Qt Creator就不需要额外安装了,和Qt 5.12.5共用即可。
笔者Qt 4的qmake路径是:/Users/用户名/qt4-mac-4.8.7_10.darwin_19.x86_64/opt/local/libexec/qt4/bin/qmake
---
参考文献
http://xstarcd.github.io/wiki/MacOS/MacOS_MacPorts.html
https://trac.macports.org/ticket/58651
https://github.com/macports/macports-ports/tree/master/aqua/qt4-mac