Search code examples
cmddeep-learningdarknet

Error running "make" command in order to run darknet


I have cloned a darknet to my computer running Windows using terminal and this line:

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

Then I entered darknet folder and running "make" command twice I got two different errors:

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

After running it more than three times, the error became the same, but I don't understand why it appears

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

Solution

  • You don't say what environment you are using, although it is obvious from the error output that it is windows - msys?, msys2, something else ?

    'mkdir -p' wont work if you are using the standard windows mkdir. So you need to run in an environmet that supports that ie: msys2.

    The next issue will be that the Makefile is written to create .so files etc that are unix based, not for windows, so it wont work without changing the Makefile for the differences in windows vs unix.

    Quoting the webpage: https://pjreddie.com/darknet/install/

    'I've only tested this on Linux and Mac computers.'

    After all that, it will also require OpenCV and CUDA installed and somewhere the makefile/compiler will find the libraries to use.