如何在不进行迁移的情况下卸载macports?

时间:2018-06-03 19:10:45

标签: macos macports

我目前正在使用MacOS High Sierra 10.13.5。我想在我的macbook上卸载MacPorts。

根据此处的说明:

https://guide.macports.org/chunked/installing.macports.uninstalling.html

我应该做以下

$ sudo port -fp uninstall installed

以下是我看到的回复:

Error: Current platform "darwin 17" does not match expected platform "darwin 16"
Error: If you upgraded your OS, please follow the migration instructions: https://trac.macports.org/wiki/Migration
OS platform mismatch
    while executing
"mportinit ui_options global_options global_variations"
Error: /opt/local/bin/port: Failed to initialize MacPorts, OS platform mismatch

在卸载之前,我是否真的需要先进行迁移?有没有办法直接安装?

2 个答案:

答案 0 :(得分:2)

虽然绝大多数文件都安装在/opt/local/Applications/MacPorts/Library/LaunchDaemons/org.macports.*中,但有一些端口可以在其他位置安装文件,例如由于操作系统要求。根据您是否安装了此类端口,Ken(https://stackoverflow.com/a/50670316/2127896)的解决方案可能会留下一些文件。

如果您想确保捕获所有文件,请按照MacPorts migration instructions直到步骤3,即基本上重新安装MacPorts base(例如通过运行安装程序)。这应该只需要几分钟。

然后,按照https://guide.macports.org/#installing.macports.uninstalling,即运行

$ sudo port -fp uninstall installed

然后在Ken的回答中已经提到了rm -rf命令。

答案 1 :(得分:1)

绝大多数MacPorts安装的东西都进入/ opt / local。当然,您可以使用以下命令删除它:

sudo rm -rf /opt/local

我知道有几个端口可以将内容安装到/ Applications / MacPorts中,所以你也可以这样做来捕获这些内容:

sudo rm -rf /Applications/MacPorts

我有一个端口在/ Library / LaunchDaemons中安装了一个启动守护进程,所以:

sudo rm -rf /Library/LaunchDaemons/org.macports.*

你可以检查/ Library / LaunchAgents之类的类似地方以及〜/ Library中的相应目录。

实际上,您在问题中提供的链接会告诉您该怎么做:

$ sudo rm -rf \
        /opt/local \
        /Applications/DarwinPorts \
        /Applications/MacPorts \
        /Library/LaunchDaemons/org.macports.* \
        /Library/Receipts/DarwinPorts*.pkg \
        /Library/Receipts/MacPorts*.pkg \
        /Library/StartupItems/DarwinPortsStartup \
        /Library/Tcl/darwinports1.0 \
        /Library/Tcl/macports1.0 \
        ~/.macports