makefile变量就像环境变量,事实上环境变量在make过程中被解释成make的变量。这些变量是大小写敏感的,一般都定义成大写。它们可以在任何地方被引用,如: a) 存贮一个文件名列表 b) 存贮可执行文件名 c) 存贮编译器旗标,如果你想给你所有的编译命令传递一组相同的选项,可以把这组选项存入一个变量。 要设定一个变量,只有在一行开始的写下这个变量的名字,后面跟一个=,后面跟你要设定的这个变量的值。以后要引用,写一个$...
在makefile中引用环境变量是否都要以诸如下面的方式 $(HOME) 这个不是shell中命令替换的格式么:)为何makefile中不和普通shell中一样以$HOME的方式来引用环境变量呢?
想在某个段中判断一个条件, 根据不同条件去执行不同的指令, 这样的makefile该怎么写? [code] all: # 判断DEBUG变量是否有设置 strip *[/code]
大家好,我需要在UltraSparcII, solaris10上重新编译64bit版本的MySQL 5.0.19,因此增加了-m64参数,但发现configure以后,部分目录下的makefile的CFLAGS变量加入了-m64,但部分目录下的makefile却没有-m64,导致链接出现32bit和64bit不兼容的问题。 我的configure如下: CFLAGS="-g -m64 -Wimplicit -Wreturn-type -Wswitch -Wtrigraphs -Wcomment -W -Wchar-subscripts -Wformat -Wparentheses -Wsign-compare -Wwrite-strings...
在makefile中,定义了两个变量 A := a b c B := b c d 现在,我想用一个变量将 A B中的内容合并过来,并消除重复部分。 也就是如何得到 C = a b c d? 谢谢!
makefile文件如下: PATH1 = /home/tang/cprograme/mcspf/source/ main: $(PATH1) main.cpp \ $(PATH1) graph.cpp \ $(PATH1) graph.h g++ -g /home/tang/cprograme/mcspf/source/graph.cpp \ /home/tang/cprograme/mcspf/source/main.cpp -o ./main 编译时,问题如下: make: *** No rule to make target `main.cpp', needed by `main'. Stop. 但是,当不用$(PATH1)而直接用绝对路径:/home/tang/c...
我的makefile是这样写的 contents := $(shell ./4) all: @echo -e "OK" @echo -e $(contents) shell脚本4: #!/bin/bash PS3='Choose your favorite vegetable:' echo select vegetable in "beans" "carrots" "potatoes" "onions" "rutabagas" do echo "$vegetable" break done exit 0 运行make命令后 1) beans 2) carrots 3) potatoes 4) onions 5) rutabagas Choose your favorite vegetab...
请问下面出现的@include@这两个at符是什么意思??或者谁能告诉用什么关键字能在网上找到相关的内容,谢谢 ///////////////////////////////////// includedir = @includedir@/ace pkgconfigdir = @libdir@/pkgconfig ACE_BUILDDIR = $(top_builddir) ACE_ROOT = $(top_srcdir) SUBDIRS = \ . \ QoS \ SSL CLEANFILES = lib_LTLIBRARIES = pkgconfig_DATA = nobase_include_HEADERS = ## makefile.ACE....
几个文件的路径如下
M/a.c
M/subdir
M/makefile
M/subdir/b.c
M/subdir/b.h
makefile的内容如下:
#makefile
VPATH = subdir
a:a.o b.o