Использование сделать на моей машине Gentoo (что GNU сделать 3.82) со следующими Makefile
, интересно, почему целевая data/spectra/o4_greenblatt_296K.dat
обновляется каждый раз, когда я выполнить make data/spectra/o4_greenblatt_296K.dat
, хотя ни один из файлов params/base/fwhm.dat
, params/base/wavelength_grid.dat
и data/raw/o4green_gpp.dat
не изменилось и файл data/spectra/o4_greenblatt_296K.dat
уже существует:Почему всегда обновляется эта цель?
FWHM = params/base/fwhm.dat
WLGRID = params/base/wavelength_grid.dat
$(WLGRID): code/create_wavelength_grid.py
cp code/create_wavelength_grid.py params/base/wavelength_grid.dat
$(FWHM): code/create_fwhm_param.py
cp code/create_fwhm_param.py params/base/fwhm.dat
data/raw/o4green_gpp.dat:
echo 1 > data/raw//o4green_gpp.dat
input_spectra_o4_raw: data/raw/o4green_gpp.dat
data/spectra/o4_greenblatt_296K.dat: $(WLGRID) $(FWHM) input_spectra_o4_raw
echo 1 > data/spectra/o4_greenblatt_296K.dat
input_spectra_o4: data/spectra/o4_greenblatt_296K.dat
Любая помощь вы, ребята, можете дать сделать новичку очень ценится :)
Как насчет 'code /' файлов? –
тоже те не меняются. –
Запустить 'make -d'. Он быстро (хотя и подробно) расскажет вам, почему он решает перестроить каждую цель. Я настоятельно призываю вас использовать автоматические переменные, в частности '$ @', но также '$ <', в ваших рецептах, чтобы уменьшить риск опечаток. – MadScientist