首页 > 解决方案 > 运行“make”命令以运行暗网时出错

问题描述

我已经使用终端和这一行将暗网克隆到运行 Windows 的计算机上:

git clone https://github.com/pjreddie/darknet.git

然后我进入darknet文件夹并运行“make”命令两次,我得到了两个不同的错误:

mkdir -p obj
mkdir -p backup
A subdirectory or file -p already exists.
Error occurred while processing: -p.
make: *** [backup] Error 1

mkdir -p results
A subdirectory or file -p already exists.
Error occurred while processing: -p.
make: *** [results] Error 1

运行了三遍以上,还是一样,但是不明白为什么会出现

gcc -Iinclude/ -Isrc/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -Ofast -c ./src/gemm.c -o obj/gemm.o
process_begin: CreateProcess(NULL, gcc -Iinclude/ -Isrc/ -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -Ofast -c ./src/gemm.c -o obj/gemm.o, ...) failed.
make (e=2): The system cannot find the file specified.
make: *** [obj/gemm.o] Error 2

标签: cmddeep-learningdarknet

解决方案


您没有说您使用的是什么环境,尽管从错误输出中可以明显看出它是 windows - msys?, msys2, 其他什么?

如果您使用的是标准 Windows mkdir,则“mkdir -p”将不起作用。所以你需要在支持它的环境中运行,即:msys2。

下一个问题是编写 Makefile 是为了创建基于 unix 的 .so 文件等,而不是用于 windows,因此如果不更改 Makefile 以适应 windows 与 unix 的差异,它将无法工作。

引用网页:https ://pjreddie.com/darknet/install/

“我只在 Linux 和 Mac 电脑上测试过这个。”

毕竟,它还需要安装 OpenCV 和 CUDA,并且 makefile/编译器会在某个地方找到要使用的库。


推荐阅读