鱼C论坛

 找回密码
 立即注册
查看: 2165|回复: 22

[已解决]关于darkent的Makefile文件修改问题-pjreddie / darknet

[复制链接]
发表于 2023-4-24 11:08:36 | 显示全部楼层 |阅读模式
40鱼币
我将darknet的makefile中的GPU设置为了1,但是最后编译时出现图片中的错误,cuda_runtime.h 找不到
我具体该怎么修改Makefile中的路径呢,改成我的路径
最佳答案
2023-4-24 11:08:37
TSwangming 发表于 2023-4-24 19:27
方便问一下具体该怎么加吗

COMMON+= -DGPU -I"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include"
lib.png
include.png
darknet错误.png

最佳答案

查看完整内容

COMMON+= -DGPU -I"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include"
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 11:08:37 | 显示全部楼层    本楼为最佳答案   
TSwangming 发表于 2023-4-24 19:27
方便问一下具体该怎么加吗

COMMON+= -DGPU -I"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include"
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 11:31:48 | 显示全部楼层
从你的描述来看,你的问题似乎是关于Darknet的编译问题。你需要在Makefile文件中设置正确的CUDA和CUDNN路径,以便编译器能找到相关的头文件和库文件。下面是一些建议来修改Makefile文件:

1. 打开Makefile文件,找到以下几行:
GPU=1
CUDNN=1
OPENCV=1

将这些值设置为1,表示你要使用GPU、CUDNN和OpenCV功能。如果你只想使用GPU,可以将CUDNN和OPENCV设置为0。

2. 确保你已经安装了CUDA和CUDNN。检查CUDA和CUDNN的安装路径。默认情况下,它们通常安装在以下路径:
/usr/local/cuda
/usr/local/cuda/include
/usr/local/cuda/lib64

3. 在Makefile中,找到以下几行:
COMMON+= -DGPU -I/usr/local/cuda/include/
CFLAGS+= -DGPU
LDFLAGS+= -L/usr/local/cuda/lib64 -lcuda -lcudart -lcublas -lcurand

确保这里的路径与你的CUDA安装路径一致。如果需要,可以修改这些路径。例如,如果你的CUDA安装在`/opt/cuda`,那么你需要将这些路径改为:
COMMON+= -DGPU -I/opt/cuda/include/
CFLAGS+= -DGPU
LDFLAGS+= -L/opt/cuda/lib64 -lcuda -lcudart -lcublas -lcurand

4. 如果你还启用了CUDNN,同样需要修改CUDNN的相关路径。找到以下几行:
COMMON+= -DCUDNN -I/usr/local/cudnn/include
CFLAGS+= -DCUDNN
LDFLAGS+= -L/usr/local/cudnn/lib64 -lcudnn

根据你的CUDNN安装路径进行相应的修改。

5. 保存并关闭Makefile文件。

6. 在终端中,进入Darknet目录,运行以下命令重新编译:
make clean
make

这应该可以解决你遇到的问题。如果仍然存在问题,请检查CUDA和CUDNN是否正确安装,以及它们的版本是否与Darknet兼容。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 14:50:20 | 显示全部楼层
isdkz 发表于 2023-4-24 11:31
从你的描述来看,你的问题似乎是关于Darknet的编译问题。你需要在Makefile文件中设置正确的CUDA和CUDNN路径 ...

如果是像我发的图片中的位置,是否是改成“COMMON+= -DGPU -I/C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include”呢,还有就是我其中一个图片也显示了我没有lib64这个目录,只有lib/x64的目录,这要怎么改呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 14:52:22 | 显示全部楼层
isdkz 发表于 2023-4-24 11:31
从你的描述来看,你的问题似乎是关于Darknet的编译问题。你需要在Makefile文件中设置正确的CUDA和CUDNN路径 ...

我目前只需要用GPU,cdunn和opencv设置的是1
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 14:53:31 | 显示全部楼层
TSwangming 发表于 2023-4-24 14:50
如果是像我发的图片中的位置,是否是改成“COMMON+= -DGPU -I/C:/Program Files/NVIDIA GPU Computing To ...

改成 COMMON+= -DGPU -IC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include

-I 后面的斜杠不要

如果没有 lib64,就用 lib/x64 的目录也是可以的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 15:02:32 | 显示全部楼层
isdkz 发表于 2023-4-24 14:53
改成 COMMON+= -DGPU -IC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include

-I 后面 ...

嗯嗯,我想问一下如果是安装到其他盘比如D盘,也是-I后的斜杠不要,写成-ID:/xxx吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 15:04:01 | 显示全部楼层
TSwangming 发表于 2023-4-24 15:02
嗯嗯,我想问一下如果是安装到其他盘比如D盘,也是-I后的斜杠不要,写成-ID:/xxx吗

对的,有斜杠的是linux的路径形式,windows是用盘符来代替那个根目录的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 15:08:18 | 显示全部楼层
isdkz 发表于 2023-4-24 15:04
对的,有斜杠的是linux的路径形式,windows是用盘符来代替那个根目录的

我刚刚试过了,还是和之前一样的错误,cuda_runtime.h找不到,该怎么办呢,我明明在include目录中可以找到的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 15:10:09 | 显示全部楼层
isdkz 发表于 2023-4-24 15:04
对的,有斜杠的是linux的路径形式,windows是用盘符来代替那个根目录的

这是我改后的:
ifeq ($(GPU), 1)
COMMON+= -DGPU -IC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include
CFLAGS+= -DGPU
LDFLAGS+= -LC:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/lib/x64 -lcuda -lcudart -lcublas -lcurand
endif
但还是出错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 15:26:44 | 显示全部楼层
TSwangming 发表于 2023-4-24 15:10
这是我改后的:
ifeq ($(GPU), 1)
COMMON+= -DGPU -IC:/Program Files/NVIDIA GPU Computing Toolkit/ ...

你看一下报错信息的路径是不是你设置的路径?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 15:45:30 | 显示全部楼层
isdkz 发表于 2023-4-24 15:26
你看一下报错信息的路径是不是你设置的路径?

我看的应该和我的设置一样
rengcuo.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 19:15:31 | 显示全部楼层
isdkz 发表于 2023-4-24 15:26
你看一下报错信息的路径是不是你设置的路径?

想问一下您知道该怎么改了吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 19:17:11 | 显示全部楼层
TSwangming 发表于 2023-4-24 19:15
想问一下您知道该怎么改了吗

因为你的路径中有空格,所以要加入双引号
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 19:27:37 | 显示全部楼层
isdkz 发表于 2023-4-24 19:17
因为你的路径中有空格,所以要加入双引号

方便问一下具体该怎么加吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 19:28:58 | 显示全部楼层
isdkz 发表于 2023-4-24 19:17
因为你的路径中有空格,所以要加入双引号

COMMON+= -DGPU -I"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include"
请问是这样加吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 19:30:20 | 显示全部楼层
TSwangming 发表于 2023-4-24 19:28
COMMON+= -DGPU -I"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include"
请问是这样加 ...

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-4-24 19:36:46 | 显示全部楼层
isdkz 发表于 2023-4-24 19:29
COMMON+= -DGPU -I"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v11.6/include"

非常感谢您,但是又出现了一个新的问题 Snipaste_2023-04-24_19-36-09.png
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 19:37:50 | 显示全部楼层
TSwangming 发表于 2023-4-24 19:36
非常感谢您,但是又出现了一个新的问题

这就是编译环境的问题了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-4-24 19:40:38 | 显示全部楼层
TSwangming 发表于 2023-4-24 19:36
非常感谢您,但是又出现了一个新的问题

把你的编译环境的bin目录加进path环境变量
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-7 15:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表