C 如何复制文件并在Makefile中创建目录?
从Makefile: 需要从C 如何复制文件并在Makefile中创建目录?,c,linux,bash,makefile,C,Linux,Bash,Makefile,从Makefile: 需要从。/lib复制一个文件,并从当前名为test的创建一个目录 和另一个文件,并从当前名为test2 有这个,但我不知道怎么做,我没有从互联网上找到任何有用的信息 COPY_FILES=$(DIR)…/lib/libmy.a$(DIR)/my.h 迪尔= 全部:$(复制_文件) $(DIR)/libmy.a: 在我的一个Make文件中,我有以下规则: $(BUILD_DIRECTORY)/$(LIBRARY): $(BUILD_DIRECTORY) @clang
。/lib
复制一个文件,并从当前名为test
的
创建一个目录
和另一个文件,并从当前名为test2
有这个,但我不知道怎么做,我没有从互联网上找到任何有用的信息
COPY_FILES=$(DIR)…/lib/libmy.a$(DIR)/my.h
迪尔=
全部:$(复制_文件)
$(DIR)/libmy.a:
在我的一个Make文件中,我有以下规则:
$(BUILD_DIRECTORY)/$(LIBRARY): $(BUILD_DIRECTORY)
@clang -c $(COMMON_INCLUDE_PATHS) $(LIBRARY_COMPILER_FLAGS) $(LIBRARY_SOURCES)
@ar rcs $(LIBRARY) *.o
@mv $(LIBRARY) $(BUILD_DIRECTORY)
@rm -f *.o
$(BUILD_DIRECTORY):
@mkdir $(BUILD_DIRECTORY)
$(BUILD\u DIRECTORY)
是$(BUILD\u DIRECTORY)/$(LIBRARY)
的依赖项
如果不希望规则创建生成目录,可以使用以下方法创建目录:
mkdir -p <directory>
mkdir-p
如果目录已经存在,则
-p
选项将忽略错误。该过程的哪个部分不起作用?你在挣扎什么?您的目标目录DIR
被声明为空,在设置/声明它之前,您还引用了$(DIR)
。@Corion不知道如何创建目录并将文件复制到目录中我从Makefile创建它aMakefile
主要是shell命令,因此,您可以使用mkdir
创建目录,并使用cp
复制文件。也可以学习MaxFrm,从编辑你的问题的角度来清楚。得到一个简单的Mag文件,然后尝试用变量来概括它。只需执行all:\n\tmkdir test\ncp../lib/libmy.a.
。当你想好如何调用它并让它做你想做的事情时,就开始担心如何正确处理依赖关系并使它更通用。