ВУЗ:
Составители:
213
Теперь при изменении любого из файлов, Editor.cpp, Editor.h или
TextLine.h, файл Editor.cpp будет перекомпилирован для получения но-
вой версии файла Editor.o.
Размещение файлов с исходными текстами по директориям
Приведенный выше make-файл вполне работоспособен и с успехом
может быть использован для сборки небольших программ. Однако с
увеличением размера программы, становится не очень удобным хранить
все файлы с исходными текстами в одном каталоге. В таком случае
предпочтительно размещать эти файлы по разным директориям, отра-
жающим логическую структуру проекта. Для этого нужно модифициро-
вать make-файл, чтобы неявное правило
%.o: %.cpp
gcc -c $<
осталось работоспособным. Для этого используют переменную VPATH,
в которой перечисляются все директории, где могут располагаться ис-
ходные тексты. В следующем примере файлы Editor.cpp и Editor.h рас-
положены в каталоге Editor, а файлы TextLine.cpp и TextLine.h в каталоге
TextLine:
main.cpp
main.h
Editor /
Editor.cpp
Editor.h
TextLine /
TextLine.cpp
TextLine.h
makefile
Вот как выглядит makefile для этого примера:
source_dirs := Editor TextLine
search_wildcard s := $(addsuffix /*.cpp,$(source_dirs))
iEdit: $(notdir $(patsubst %.cpp,%.o,$(wildcard $(search_wildcard s))))
gcc $^ -o $@
VPATH := $(source_dirs)
%.o: %.cpp
gcc -c -MD $(addprefix -I ,$(source_dirs)) $<
Страницы
- « первая
- ‹ предыдущая
- …
- 211
- 212
- 213
- 214
- 215
- …
- следующая ›
- последняя »
