Windows卸载ninja流程

一、为什么卸载

在构建一些项目的时候,ninja缺少一些静态库的构建规则,想要使用原本的make试一下,但是发现ninja并不容易卸载。

在 Windows 上,您可以使用以下几种方式卸载 Ninja:

  1. 使用控制面板卸载程序:

    a. 打开控制面板。

    b. 点击“程序和功能”。

    c. 在程序列表中找到“Ninja”,右键单击它,然后选择“卸载”。

    d. 按照提示完成卸载过程。

  2. 使用命令行卸载程序:

    a. 打开命令提示符或 PowerShell。

    b. 运行以下命令:

    choco uninstall ninja
    

    如果您使用了 Chocolatey 包管理器来安装 Ninja,则可以使用此命令卸载它。

    c. 按照提示完成卸载过程。

  3. 手动删除文件:

    a. 打开 Windows 资源管理器。

    b. 导航到 Ninja 的安装目录。

    c. 删除所有与 Ninja 相关的文件和文件夹。

需要注意的是,手动删除文件可能会导致系统出现问题,因此建议您在卸载 Ninja 之前备份您的系统或咨询相关专业人士的建议。

二、流程

我之前使用了msys2来安装ninja,搜索ninja,发现安装目录为C:\msys64\mingw64\bin\ninja.exe,直接重命名或者删除是不好使的,因为项目构建依然会使用ninja构建,真正编译的时候是没有办法编译的。

直接卸载ninja:

pacman -R ninja
pacman -Rs ninja
pacman -Rsn ninja

如果没有查找到,报错:

error: target not found: ninja

所以查找ninja:

pacman -Qs ninja

发现名字并不是ninja,而是

local/mingw-w64-x86_64-ninja 1.11.1-3
    Ninja is a small build system with a focus on speed (mingw-w64)

所以卸载这个名字,去掉后面的版本号

pacman -Rs local/mingw-w64-x86_64-ninja

报错:

checking dependencies...
error: failed to prepare transaction (could not satisfy dependencies)
:: removing mingw-w64-x86_64-ninja breaks dependency 'mingw-w64-x86_64-ninja' required by mingw-w64-x86_64-cmake

三、解决方法

这个错误是因为您正在尝试卸载一个被其他软件包依赖的软件包。在这种情况下,您需要先卸载依赖于Ninja的软件包,然后再卸载Ninja。

在这个特定的错误中,您需要先卸载mingw-w64-x86_64-cmake软件包,然后再卸载mingw-w64-x86_64-ninja软件包。您可以按照以下步骤进行:

  1. 打开MSYS2终端。

  2. 运行以下命令来卸载mingw-w64-x86_64-cmake软件包:

    pacman -Rs mingw-w64-x86_64-cmake
    

    这将从系统中删除mingw-w64-x86_64-cmake及其所有依赖项。

  3. 然后,您可以运行以下命令来卸载mingw-w64-x86_64-ninja软件包:

    pacman -Rs mingw-w64-x86_64-ninja
    

    这将从系统中删除mingw-w64-x86_64-ninja及其所有依赖项。

请注意,卸载软件包可能会影响您的系统中的其他软件包,因此请谨慎操作。如果您不确定是否应该卸载软件包,请先备份您的系统或咨询相关专业人士的建议。

然后再重新安装make工具链即可:

您可以按照以下步骤在 MSYS2 上安装 CMake 工具链:

  1. 打开 MSYS2 终端并更新软件包列表:

    pacman -Syu
    
  2. 安装 CMake 和其他必要的工具:

    pacman -S mingw-w64-x86_64-cmake mingw-w64-x86_64-make mingw-w64-x86_64-gcc
    

    这将安装 CMake、Make 和 GCC 工具链。

  3. 验证 CMake 是否已正确安装:

    cmake --version
    

    如果一切正常,您应该看到 CMake 的版本信息。

注意:如果您使用的是 UCRT 版本的 MSYS2,您需要使用 mingw-w64-x86_64-cmake 而不是 msys/cmake

你可能感兴趣的:(bug,windows,msys2,ninja)