Как понять make-файлы и Python - PullRequest
       0

Как понять make-файлы и Python

2 голосов
/ 06 сентября 2010

Я пытаюсь понять, как работает make-файл для компиляции некоторых файлов .ui в .py (PyQt -> Python).Это используемый мной make-файл, который был сгенерирован автоматически:

# Makefile for a PyQGIS plugin 
UI_FILES = Ui_UrbanAnalysis.py

RESOURCE_FILES = resources.py

default: compile
    compile: $(UI_FILES) $(RESOURCE_FILES)

%.py : %.qrc
    pyrcc4 -o $@  $<

%.py : %.ui
    pyuic4 -o $@ $<

Когда я набираю:

$ make

, я получаю следующее сообщение:

make: *** No rule to make target `compile', needed by `default'.  Stop.

Чтоя делаю неправильно?

Спасибо.

1 Ответ

2 голосов
/ 06 сентября 2010

Не то, чтобы я знал шаги сборки, которые вы пытаетесь выполнить, но обе эти строки:

default: compile
    compile: $(UI_FILES) $(RESOURCE_FILES)

выглядят как целевые линии, поэтому они, вероятно, должны быть:

default: compile

compile: $(UI_FILES) $(RESOURCE_FILES)

Как было указано, make, вероятно, пытается интерпретировать строку compile:... как действие, которое ничего не будет делать и означает, что цель compile отсутствует.


Еще одна вещь, вы можете использовать

PHONY: default compile

, чтобы сказать make, что это абстрактные цели и не представляют файлы.Просто как хорошая практика.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...