vpath

    1热度

    1回答

    我试过编写简单的makefile进行练习。 我有两个目录1.索马里红新月会(.C),2.include( .H) ,并试图定义变量SRCS将包含当前目录下的所有.c文件 和srcs目录。 以下是我的Makefile CURDIR = $(shell pwd) OBJDIR = $(CURDIR)/objdir VPATH = $(CURDIR)/srcs SRCS = $(wildcard

    0热度

    2回答

    有没有人可以帮助我理解为什么GNU make会在下面的例子中考虑“循环依赖”。如果未指定VPATH并且源文件在当前目录中显示,则一切正常。 $ cat Makefile VPATH = src src%.o: %.cpp @echo ECHO: [email protected]: $< lib%.o: %.cpp @echo ECHO: [email prote

    1热度

    1回答

    makefile中的VPATH变量用于指示搜索路径。但是它的“V”究竟代表什么? make变量VPATH的值指定了应该搜索的目录列表。大多数情况下,这些目录应包含不在当前目录中的必备文件;但是,请使用VPATH作为规则的先决条件和目标的搜索列表。

    2热度

    2回答

    我在一个目录中有源代码并且在不同的目录中有一个makefile。我可以使用make系统的vpath机制编译代码。 .o文件正在makefile所在的同一文件夹中创建。但我想将这些.o文件移动到名为obj的不同目录中。我试过如下: vpath %.o obj 然而,他们仍然在同一文件夹中生成文件创建。任何人都可以帮我解决这个问题吗? 这里是我的一些突出make文件的行: PATH_TO_OBJ: -

    0热度

    1回答

    我已经VPATH设置如下: vpath %.cpp $(SRC) 现在,如果我要得到被创建的对象的文件列表,它应该不会与下面的工作吗? COBJS=$(patsubst %.cpp,%.o,$(wildcard *.cpp)) 它不是。我没有收到任何类型的文件列表,当我运行命令 make --just-print 只显示目标文件的列表,如果我做到以下几点: COBJS=$(patsub

    0热度

    1回答

    我有点奇怪的大小写,我正在努力弄清楚。我有一个C++项目,我以一些.cpp文件开始,我需要从多个应用程序使用的多个远程目录中编译一些源文件。这并不理想,但这是我的开发组使用的传统目录/编译结构。 其他项目利用VPATH来实现这一点。但是,它们最终会对所链接的所需对象列表进行硬编码,而且这种方法对我来说看起来不够优雅或灵活。我想动态编译和链接所有内容。另一个潜在的复杂情况是,这些远程VPATH目录中

    0热度

    1回答

    我添加另一条规则一个Makefile合作,试图建立一个使用痛饮使用JNI 额外的规则是这样的(从基本解除包功能的Java一个C共享库的SWIG java的范例之一) java: $(program_C_SRCS) $(SWIG) -java $(SWIGOPT) $(INTERFACEPATH) $(CC) -c $(CFLAGS) $(JAVACFLAGS) $(progra

    0热度

    1回答

    使用VPATH目前试图端口Makefile到Android.mk文件,这样我可以构建一个共享库与ndk-build 我似乎无法得到VPATH来,虽然做任何事情。 例如 # File: Android.mk LOCAL_PATH := $(call my-dir) include $(CLEAR_VARS) LOCAL_MODULE := example MY_API_SRCS = \

    2热度

    1回答

    下面的例子生成文件按预期工作,用vpath找到目标文件和源文件。但是,在最后一行,在这里我告诉做出的另外一个目标文件的依赖,我需要指定目录的前提文件$(objd)/,否则我得到一个错误(请参见下面的代码中的错误消息)。最后一行vpath指令怎么不足? # Program Name prog = avpar #dirs objd=obj modd=mod # extra places

    0热度

    1回答

    如何使用AS_INIT_GENERATE生成与configure脚本不在同一目录中的脚本,特别是如何使VPATH构建得到遵守? 例如,对于含 AC_PREREQ([2.68]) AC_INIT([example],[0.1]) AS_INIT_GENERATED([src/file.sh]) || AS_EXIT AC_OUTPUT 运行命令 ~ $ autoreconf . ~ $