«makefile» etiketlenmiş sorular

Bir makefile, yapı denetim dili / araç markası için bir girdi dosyasıdır. Hedefleri güncellemek için gerçekleştirilecek ilişkili komutlarla (hedefler olarak da adlandırılır) birlikte hedefleri ve bağımlılıkları belirtir.

15
Makefile'da bir değişken nasıl yazdırılır
Dosyamda, bir değişken 'NDK_PROJECT_PATH' var, sorum şu: Derlendiğinde nasıl yazdırabilirim? "$ PATH" dizesini gösteren dosya yankı yap okudum ve denedim: @echo $(NDK_PROJECT_PATH) @echo $(value NDK_PROJECT_PATH) Her ikisi de bana veriyor "build-local.mk:102: *** missing separator. Stop." Biri neden benim için çalışmadığını biliyor mu?
247 makefile  gnu-make 


7
Bir komutun çıktısını Makefile değişkenine atama
Yüklü Python belirli bir sürümden daha büyükse, bazı kurallar koşullu yürütmek gerekir (diyelim 2.5). Yürütmek gibi bir şey yapabileceğimi düşündüm: python -c 'import sys; print int(sys.version_info >= (2,5))' ve bir ifeqmake deyiminde çıktıyı (tamamsa '1', aksi takdirde '0') kullanarak . Basit bir bash kabuk betiğinde sadece: MY_VAR=`python -c 'import sys; …
225 shell  makefile 

4
Hedefin neden güncel olduğunu düşünüyoruz?
Bu benim Makefile'm: REBAR=./rebar REBAR_COMPILE=$(REBAR) get-deps compile all: compile compile: $(REBAR_COMPILE) test: $(REBAR_COMPILE) skip_deps=true eunit clean: -rm -rf deps ebin priv doc/* docs: $(REBAR_COMPILE) doc ifeq ($(wildcard dialyzer/sqlite3.plt),) static: $(REBAR_COMPILE) build_plt analyze else static: $(REBAR_COMPILE) analyze endif make compileBirden çok kez koşup alabilirim aromanov@alexey-desktop:~/workspace/gm-controller/lib/erlang-sqlite$ make compile ./rebar get-deps compile ==> …
224 makefile 





6
Bash sözdizimini Makefile hedeflerinde nasıl kullanabilirim?
Sık sık Bash sözdizimini çok yararlı buluyorum , örn diff <(sort file1) <(sort file2). Bu tür Bash komutlarını bir Makefile'de kullanmak mümkün mü? Böyle bir şey düşünüyorum: file-differences: diff <(sort file1) <(sort file2) > $@ GNU Make 3.80'de bu , komutları yürütmek shellyerine onu kullandığından bir hata verecektir bash.
209 bash  shell  makefile 

4
Kural yürütme zamanında make değişkenini tanımla
GNUmakefile'mda geçici bir dizin kullanan bir kurala sahip olmak istiyorum. Örneğin: out.tar: TMP := $(shell mktemp -d) echo hi $(TMP)/hi.txt tar -C $(TMP) cf $@ . rm -rf $(TMP) Yazıldığı gibi, yukarıdaki kural, kuralın ayrıştırıldığı sırada geçici dizini oluşturur . Bu demektir ki, ben bile yapamıyorum. Yıldız her zaman, birçok …
209 makefile  gnu-make 

12
Makefile'nizin şu anki göreli dizinini nasıl edinebilirsiniz?
Bunun gibi app belirli dizinlerde birkaç Makefiles var: /project1/apps/app_typeA/Makefile /project1/apps/app_typeB/Makefile /project1/apps/app_typeC/Makefile Her Makefile bir üst düzey bu yolda bir .inc dosyası içerir: /project1/apps/app_rules.inc İçinde app_rules.inc İkili dosyaları inşa ederken yerleştirilmesini istediğim yeri belirliyorum. Tüm ikili dosyaların kendi app_typeyollarında olmasını istiyorum : /project1/bin/app_typeA/ Kullanmayı denedim$(CURDIR) , şöyle: OUTPUT_PATH = /project1/bin/$(CURDIR) ancak …




15
Bir makefile'ı bir hedefi yeniden oluşturmaya nasıl zorlarsınız?
Oluşturup sonra başka bir makefile çağıran bir makefile var. Bu makefile, işi yapan daha fazla makefile çağırdığından, gerçekten değişmez. Böylece projenin inşa edildiğini ve güncel olduğunu düşünüyor. dnetdev11 ~ # make make: `release' is up to date. Makefile'ı hedefi yeniden oluşturmaya nasıl zorlarım? clean = $(MAKE) -f ~/xxx/xxx_compile.workspace.mak clean build …
184 linux  makefile 

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.