这份解决方案得益于Grounding DINO的github issue #355链接如下:

How to run the project inside conda environment CUDA enabled · Issue #355 · IDEA-Research/GroundingDINO

在尝试下载并编译一些混合库(既包含Python文件也包含c,c++,cu文件)时有可能会出现这样的报错。

核心问题是开了conda环境而没有在conda环境里面装入conda中的cuda 。下面是chat gpt对conda环境组成的介绍,conda中不仅包括python的解释器,python的各种的包(全是python文件的和混合需要编译的包),还能管理c/c++库。

解决办法是首先:

conda install nvidia::cuda

或者指定下载版本:

conda install nvidia/label/cuda-12.2.1::cuda

然后再进行环境变量的设定,设定三个然后conda deactivate再conda activate <your env>

conda env config vars set CUDA_HOME="/home/user/miniconda3/envs/<ENV Name>/"
conda env config vars set LD_LIBRARY_PATH="/home/user/miniconda3/envs/<ENV Name>/targets/x86_64-linux/lib/:$LD_LIBRARY_PATH"
conda env config vars set CPATH = "/home/user/miniconda3/envs/<ENV Name>/targets/x86_64-linux/include/:$CPATH"

注意把环境变量中的<ENV Name>换成你的环境名称,路径也要检查确保和自己的一致。可以通过在conda中输入:

which nvcc

来确定自己在conda中的cuda runtime路径。

Logo

欢迎来到FlagOS开发社区,这里是一个汇聚了AI开发者、数据科学家、机器学习爱好者以及业界专家的活力平台。我们致力于成为业内领先的Triton技术交流与应用分享的殿堂,为推动人工智能技术的普及与深化应用贡献力量。

更多推荐