Вопросы с тегом «makefile»

Makefile - это входной файл для языка управления сборкой / инструмента make. Он определяет цели и зависимости, а также соответствующие команды для выполнения (например, рецепты) для обновления целей.

15
Как распечатать переменную в make-файле
В моем make-файле у меня есть переменная 'NDK_PROJECT_PATH', мой вопрос, как я могу распечатать его, когда он компилируется? Я прочитал Make file echo с отображением строки "$ PATH" и попытался: @echo $(NDK_PROJECT_PATH) @echo $(value NDK_PROJECT_PATH) Оба дает мне "build-local.mk:102: *** missing separator. Stop." Кто-нибудь знает, почему это не работает для …
247 makefile  gnu-make 


7
Как назначить вывод команды для переменной Makefile
Мне нужно выполнить некоторые правила make условно, только если установленный Python больше определенной версии (скажем, 2.5). Я думал, что могу сделать что-то вроде выполнения: python -c 'import sys; print int(sys.version_info >= (2,5))' а затем используя вывод («1», если в порядке, «0» в противном случае) в операторе ifeqmake. В простом сценарии …
225 shell  makefile 

4
Почему заставляет думать, что цель актуальна?
Это мой Makefile: 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 compileнесколько раз и получить aromanov@alexey-desktop:~/workspace/gm-controller/lib/erlang-sqlite$ make compile ./rebar get-deps …
224 makefile 





6
Как я могу использовать синтаксис Bash в целях Makefile?
Я часто нахожу синтаксис Bash очень полезным, например, подстановка процесса, как вdiff <(sort file1) <(sort file2) . Можно ли использовать такие команды Bash в Makefile? Я думаю о чем-то вроде этого: file-differences: diff <(sort file1) <(sort file2) > $@ В моем GNU Make 3.80 это выдаст ошибку, так как он …
209 bash  shell  makefile 

4
Определить переменную make во время выполнения правила
В моем GNUmakefile я хотел бы иметь правило, которое использует временный каталог. Например: out.tar: TMP := $(shell mktemp -d) echo hi $(TMP)/hi.txt tar -C $(TMP) cf $@ . rm -rf $(TMP) Как написано выше, указанное выше правило создает временный каталог во время его анализа . Это означает, что, даже если …
209 makefile  gnu-make 

12
Как получить текущий относительный каталог вашего Makefile?
У меня есть несколько файлов Makefile в определенных каталогах приложений, например: /project1/apps/app_typeA/Makefile /project1/apps/app_typeB/Makefile /project1/apps/app_typeC/Makefile Каждый Makefile включает в себя файл .inc по этому пути на один уровень выше: /project1/apps/app_rules.inc Внутри app_rules.inc я устанавливаю место назначения, куда я хочу поместить двоичные файлы при сборке. Я хочу, чтобы все двоичные файлы были …

17
Как вы получаете список целей в make-файле?
Я немного использовал rake (программу Ruby make), и у нее есть возможность получить список всех доступных целей, например > rake --tasks rake db:charset # retrieve the charset for your data... rake db:collation # retrieve the collation for your da... rake db:create # Creates the databases defined in y... rake db:drop …

3
Как «заставить» приложение знать цель по умолчанию для сборки, если цель не указана?
Большинство приложений Linux скомпилированы с: make make install clean Как я понял, make принимает имена целей сборки в качестве аргументов. Так installчто цель, которая копирует некоторые файлы, а после этого cleanцель, которая удаляет временные файлы. Но какую цель будет makeстроить, если не указаны аргументы (например, первая команда в моем примере)?
188 makefile 

12
Как запустить make-файл в Windows?
У меня есть некоторые загруженные демонстрации, которые идут с Makefile.win и Makefile.sgi. Как я могу запустить их в Windows, чтобы скомпилировать демки?
187 windows  makefile 

15
Как вы заставляете make-файл перестраивать цель
У меня есть make-файл, который создает, а затем вызывает другой make-файл. Так как этот make-файл вызывает больше make-файлов, которые действительно работают, он действительно не меняется. Таким образом, он продолжает думать, что проект построен и обновлен. dnetdev11 ~ # make make: `release' is up to date. Как заставить make-файл перестроить цель? …
184 linux  makefile 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.