尝试让nmake在通过Chocolatey安装时工作,神奇的调用是什么?

问题描述 投票:0回答:1

我正在尝试为 Elixir 设置一个开发环境,我想我会尝试使用 Chocolatey 作为包管理器,因为我听说其他项目的其他人在这方面取得了一些成功。

到目前为止我已经安装了这两个软件包:

choco install visualstudio2022community
choco install visualstudio2022buildtools

还有大量其他可用软件包,未安装这些软件包可能与该问题有关。目前尚不完全清楚我需要哪些。

C:\Windows\System32>choco search visualstudio2022
Chocolatey v2.1.0
visualstudio2022buildtools 117.6.3 [Approved]
visualstudio2022community 117.6.3 [Approved]
visualstudio2022enterprise 117.6.3 [Approved]
visualstudio2022professional 117.6.3 [Approved]
visualstudio2022-remotetools 17.0.33103.184 [Approved] Downloads cached for licensed users
visualstudio2022teamexplorer 117.6.3 [Approved]
visualstudio2022testagent 117.6.3 [Approved]
visualstudio2022testcontroller 117.6.3 [Approved]
visualstudio2022-workload-azure 1.0.0 [Approved]
visualstudio2022-workload-azurebuildtools 1.0.0 [Approved]
visualstudio2022-workload-data 1.0.0 [Approved]
visualstudio2022-workload-databuildtools 1.0.0 [Approved]
visualstudio2022-workload-datascience 1.0.1 [Approved]
visualstudio2022-workload-manageddesktop 1.0.1 [Approved]
visualstudio2022-workload-manageddesktopbuildtools 1.0.0 [Approved]
visualstudio2022-workload-managedgame 1.0.0 [Approved]
visualstudio2022-workload-nativecrossplat 1.0.0 [Approved]
visualstudio2022-workload-nativedesktop 1.0.0 [Approved]
visualstudio2022-workload-nativegame 1.0.0 [Approved]
visualstudio2022-workload-nativemobile 1.0.0 [Approved]
visualstudio2022-workload-netcrossplat 1.0.0 [Approved]
visualstudio2022-workload-netweb 1.0.0 [Approved]
visualstudio2022-workload-node 1.0.0 [Approved]
visualstudio2022-workload-nodebuildtools 1.0.0 [Approved]
visualstudio2022-workload-office 1.0.0 [Approved]
visualstudio2022-workload-officebuildtools 1.0.0 [Approved]
visualstudio2022-workload-python 1.0.0 [Approved]
visualstudio2022-workload-universal 1.0.0 [Approved]
visualstudio2022-workload-universalbuildtools 1.0.0 [Approved]
visualstudio2022-workload-vctools 1.0.0 [Approved]
visualstudio2022-workload-visualstudioextension 1.0.0 [Approved]
visualstudio2022-workload-visualstudioextensionbuildtools 1.0.0 [Approved]
visualstudio2022-workload-webbuildtools 1.0.0 [Approved]
visualstudio2022-workload-xamarinbuildtools 1.0.0 [Approved]

安装程序没有添加适当的环境路径,这是我麻烦的开始。所以现在我正试图弄清楚我必须添加什么才能让它发挥作用。

因此,如果我搜索

nmake.exe
,我的系统上有四个具有该名称的可执行文件。但还有许多其他目录和其他工具,所以我无法弄清楚我需要哪些工具来完成这项工作。

我遵循的指南或多或少说“只需使用 WSL!”,这听起来像是让 Web 服务器快速工作的好方法,但如果我尝试构建客户端应用程序,则对我没有帮助。

我在这里缺少什么?如果现在 winget 更有用,我很乐意切换包管理器。我试图尽可能避免手动安装,以便我编写的说明尽可能短。

到目前为止尝试过:

  • 使用实际的 Visual Studio 2022 安装程序手动执行此操作,而不是自动执行。或多或少导致了同样令人困惑的情况。

  • 首先,错误消息告诉我运行的命令不起作用,因为它以某种方式被错误地引用了:

    C:\Usersester\Projects\Elixir\my_app>cmd /K“C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC cvarsall.bat”amd64
    “C:\Program”不被识别为内部或外部命令, 可运行的程序或批处理文件。

  • 手动将

    nmake
    位置之一添加到我的路径中,我收到不同的错误消息:

    ** (Mix) 无法使用“nmake”进行编译(退出状态:2)。 一种选择是安装最新版本 Visual C++ 构建工具 手动或使用 Chocolatey -

    choco install VisualCppBuildTools

    安装 Visual C++ Build Tools 后,查看“Program Files (x86)” 目录并搜索“Microsoft Visual Studio”。记下完整路径 具有最高版本号的文件夹。打开“运行”命令并 输入以下命令(确保路径和版本号 是正确的):

    cmd /K "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
    

    这应该会打开一个命令提示符,其中包含必要的环境变量 设置,您将能够从中运行“mixcompile”、“mixdeps.compile”、 和“混合测试”命令。

  • 如果我尝试按照建议安装

    VisualStudioBuildTools

    退出代码为“1603”。退出代码指示以下内容:一般 MSI 错误。这是本地环境错误,而不是软件包或 MSI 本身的问题 - 这可能意味着在安装或其他操作之前需要等待重新启动(例如已安装相同版本)。请查看 MSI 日志(如果有)。)

visual-studio-2022 chocolatey build-environment
1个回答
0
投票

我没有通过 Chocolatey 安装,而是按照 本指南 在 Windows 容器中安装 Visual Studio 2022,并在我的 Dockerfile 中包含以下内容

SHELL ["cmd", "/S", "/C"]
# Download the Build Tools bootstrapper.
RUN curl -SL --output vs_buildtools.exe https://aka.ms/vs/17/release/vs_buildtools.exe
    
# Install BuildTools
RUN (start /w vs_buildtools.exe --quiet --wait --norestart --nocache `
        --installPath "%ProgramFiles(x86)%\Microsoft Visual Studio\2022\BuildTools" `
        --add Microsoft.VisualStudio.Workload.NativeDesktop `
        --add Microsoft.VisualStudio.Component.VC.14.36.17.6.x86.x64 `
        --add Microsoft.VisualStudio.Component.VC.CMake.Project `
        || IF "%ERRORLEVEL%"=="3010" EXIT 0)

我在这里找到了正确的 nmake:

C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.39.33519\bin\Hostx64\x64\nmake.exe

参考此相关答案为我的安装找到nmake。

© www.soinside.com 2019 - 2024. All rights reserved.