在windows上安装pycuda

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

所以我尝试

python -m pip install pycuda
但失败了(这是安装失败的一些输出):

Building wheel for pycuda (pyproject.toml) ... error
  error: subprocess-exited-with-error

WARNING: nvcc not in path.

ERROR: Failed building wheel for pycuda
Failed to build pycuda
ERROR: Could not build wheels for pycuda, which is required to install pyproject.toml-based projects

我已经安装了 Visual Studio 2022 构建工具,但我没有在我的路径中添加任何内容,这就是我认为我要做的所有事情,但我不知道我必须添加什么。 pycuda wiki 的安装页面指定

C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin;C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE;

但我没有这些目录。这是我的 Visual Studio 安装树

D:\VisualStudioThings\install\VC
。 (我无法包含整个安装的树,因为它太多了)

Common7
CoreCon
DIA SDK
ImportProjects
Licenses
Microsoft Azure Tools
MSBuild
SDK
Team Tools
VB
VC
VC#
VSSDK
Xml

VC
├───Auxiliary
│   ├───Build
│   └───VS
│       ├───include
│       │   └───CppCoreCheck
│       ├───lib
│       │   ├───arm
│       │   ├───onecore
│       │   │   ├───arm
│       │   │   ├───x64
│       │   │   └───x86
│       │   ├───x64
│       │   └───x86
│       └───UnitTest
│           ├───include
│           │   ├───UWP
│           │   └───v150
│           └───lib
│               ├───ARM
│               ├───ARM64
│               ├───UWP
│               │   ├───arm
│               │   ├───arm64
│               │   └───x64
│               ├───x64
│               └───x86
├───Redist
│   └───MSVC
│       ├───14.34.31931
│       │   ├───Auxiliary
│       │   ├───debug_nonredist
│       │   │   ├───x64
│       │   │   │   ├───Microsoft.VC143.DebugCRT
│       │   │   │   ├───Microsoft.VC143.DebugCXXAMP
│       │   │   │   ├───Microsoft.VC143.DebugOpenMP
│       │   │   │   └───Microsoft.VC143.OpenMP.LLVM
│       │   │   └───x86
│       │   │       ├───Microsoft.VC143.DebugCRT
│       │   │       ├───Microsoft.VC143.DebugCXXAMP
│       │   │       ├───Microsoft.VC143.DebugOPENMP
│       │   │       └───Microsoft.VC143.OpenMP.LLVM
│       │   ├───onecore
│       │   │   ├───debug_nonredist
│       │   │   │   ├───x64
│       │   │   │   │   ├───Microsoft.VC143.DebugCRT
│       │   │   │   │   └───Microsoft.VC143.DebugOpenMP
│       │   │   │   └───x86
│       │   │   │       ├───Microsoft.VC143.DebugCRT
│       │   │   │       └───Microsoft.VC143.DebugOPENMP
│       │   │   ├───x64
│       │   │   │   ├───Microsoft.VC143.CRT
│       │   │   │   └───Microsoft.VC143.OpenMP
│       │   │   └───x86
│       │   │       ├───Microsoft.VC143.CRT
│       │   │       └───Microsoft.VC143.OPENMP
│       │   ├───x64
│       │   │   ├───Microsoft.VC143.CRT
│       │   │   ├───Microsoft.VC143.CXXAMP
│       │   │   └───Microsoft.VC143.OpenMP
│       │   └───x86
│       │       ├───Microsoft.VC143.CRT
│       │       ├───Microsoft.VC143.CXXAMP
│       │       └───Microsoft.VC143.OPENMP
│       └───v143
└───Tools
    ├───Llvm
    │   ├───bin
    │   └───x64
    │       └───bin
    └───MSVC
        └───14.34.31933
            ├───Auxiliary
            ├───bin
            │   ├───Hostx64
            │   │   ├───x64
            │   │   │   ├───1033
            │   │   │   └───onecore
            │   │   └───x86
            │   │       └───1033
            │   └───Hostx86
            │       ├───x64
            │       │   └───1033
            │       └───x86
            │           └───1033
            ├───crt
            │   └───src
            │       ├───concrt
            │       ├───i386
            │       ├───linkopts
            │       ├───stl
            │       ├───vccorlib
            │       ├───vcruntime
            │       └───x64
            ├───include
            │   ├───cliext
            │   ├───CodeAnalysis
            │   ├───cvt
            │   ├───experimental
            │   ├───fuzzer
            │   ├───Manifest
            │   ├───msclr
            │   │   └───com
            │   └───sanitizer
            └───lib
                ├───onecore
                │   ├───arm
                │   ├───x64
                │   └───x86
                ├───x64
                │   ├───onecore
                │   ├───store
                │   └───uwp
                └───x86
                    ├───onecore
                    ├───store
                    │   └───references
                    └───uwp

所以我的问题是我应该在我的路径中添加什么?

visual-studio pycuda
2个回答
1
投票

我可以重现您的问题:

由于您是基于Windows的,您可以尝试以下步骤:

pip install --upgrade pip

pip install --upgrade setuptools wheel

如果上述步骤仍然无法使其在您这边工作,我认为问题应该来自于源没有whl文件。因为pip会从https://pypi.org/搜索包,但是在这个地方,我没有看到pycuda有whl的包。

基于此,我从其他地方找到了pycuda的whl文件,通过以下方式下载并安装包:

python -m pip install packagefilename.whl

在我这边效果很好,我可以在最后安装它:


0
投票
pip install pipwin
pipwin install pycuda
© www.soinside.com 2019 - 2024. All rights reserved.