gnu-make

    -1热度

    1回答

    Scons中的'SConstruct'文件如何看起来像 以下代码在GNU Make中做了什么? target: dependency0 dependency1 shell command 1 # Not java, cc or the like shell command 2 shell command 3

    1热度

    1回答

    我的项目包含.c和.s(asm)文件。我用'gcc'编译这两种类型,并将输出.o文件放在单独的目录'./bin'中。要做到这一点我使用单生成文件的规则是这样 bin/%.o: %.[cs] $(CC) $(CFLAGS) -o [email protected] -c $< (据我了解,在这样的环境中使用方括号通配符是有点不合常规,但它的工作,它看起来整洁,所以.. 。) 有一天,

    1热度

    2回答

    我想要一种方法将参数调用到Makefile规则中的call调用中,并将其传递给内置函数,在本例中为wildcard。 这似乎并不工作: MODULE_OBJS = $(patsubst %.cc, %.o, $(wildcard $(1)/*.cc)) lib%.a: $(call MODULE_OBJS, %) @echo [email protected] : $^ 在这种情

    0热度

    1回答

    我需要编写一个简单的makefile来启动程序。该程序需要两个输入参数和一个输出,这取决于输入文件 我拥有RAW /目录上的所有输入。该文件的基本名称是相同的,但我需要两个文件R1和R2。 RDIR=RAW OUTDIR=FINAL RFILES:=$(wildcard $(RDIR)/*_R1_001.fastq.gz) OUTFILE=$(pats

    0热度

    1回答

    我正在尝试使用GNU Make的text substitution以-O1更改现有(可能缺失)的优化级别。下面是我在用的: # Valgrind testing. Issue 'make valgrind'. ifneq ($(filter valgrind,$(MAKECMDGOALS)),) $(info: Valgrind build) CXXFLAGS := $(CXXFLAGS:

    0热度

    1回答

    我正在为具有多个模块的应用程序编写makefile(GNU make)。更准确地说,对于每个模块,我有一个makefile。另外,我有一个调用每个模块的makefile的主makefile。我一直试图从这些makefile中分解出各处都需要的几个变量。我已经包括了init.mk文件在主makefile文件用下面的开头: export OS = linux ifeq ($(OS),linux)

    1热度

    1回答

    我正在学习如何为我的C/C++程序使用数据显示调试器(DDD)。 Help reference for DDD显示了一些示例输出,包括以下图形图表/图表示例。我试图重现这个练习,但是我很困难。它应该工作的方式是使用调试器选项编译cxxtest.c,而DDD工具实际上会在2D和3D两步调试会话期间绘制感兴趣的变量数组。哇,如果有效的话。 该cxxtest.c程序被包括在DDD repository,

    0热度

    1回答

    考虑下面的Makefile: .SECONDEXPANSION: %.result: jobs/% $$(call get-job,$$<) echo $^ define get-job $(shell head -n 1 $(1)) $(shell tail -n +2 $(1)) endef 的想法是,在工作/每个文件都包含一个文件名列表,它应该被追加到列表的先决条

    1热度

    1回答

    这里是我的Makefile: dist/%.js: src/%.js node_modules $(NM)/babel $< -o [email protected] build: $(patsubst src/%,dist/%,$(wildcard src/**/*.js)) 它运行如下命令: node_modules/.bin/babel src/deep/foo.js -o

    0热度

    1回答

    在我的源代码目录中,有文件名为man_en,man_de。 现在,我希望有提供给他们每个人喜欢的目标: /usr/share/man/man1/$(PROGRAM).1.gz和 在/ usr/share/man中/德/ MAN1 /$(PROGRAM).1.gz,像规则: /usr/share/man/man1/$(PROGRAM).1.gz: man_en gzip -c man_en