我以前在Windows上使用批处理脚本编译我的程序,但最近发现Makefile更高效。
我原来在.bat文件中有一行代码,在运行时将一些dll文件复制到当前目录,这个方法非常有效。
我原来在.bat文件中有一行代码,在运行时将一些dll文件复制到当前目录,这个方法非常有效。
copy C:\lib\glfw\glfw.dll
我在我的 makefile 中尝试了相同的命令行,甚至尝试了替代的cp
,但是尽管文件位于我指定的位置,我的终端仍然打印出这个错误。
process_begin: CreateProcess(NULL, copy C:\lib\glfw\glfw.dll, ...) failed
make (e=2): The system cannot find the file specified.
make: *** [core.exe] Error 2
这是我使用的完整makefile。请注意,除了复制行之外,它都可以正常工作。我做错了什么或者这可能吗?
EXEC = core.exe
OBJS = src/obp.o
CC = g++
CFLAGS = -W -Wall
LIBS = -lSOIL -lglew32 -lglfw -lopengl32
LDFLAGS =
$(EXEC): $(OBJS)
$(CC) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
copy C:\lib\glfw\glfw.dll
clean:
rm -f $(EXEC) $(OBJS) *~
copy
命令?你为什么要使用rm
呢,它能找到吗?你是在MSYS
环境下运行吗? - Reinier Torenbeek