The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Как создать Makefile с рекурсией дерикторий."
Отправлено jd, 11-Дек-09 23:49 
>1-ая проблема - на примере того же каталога gamma/os/lnx
>
>После создания Makefile c зависимостями, он выглядит следующим образом:
>
>main_lnx.o: main_lnx.cpp ./include/main_lnx.h ../os/include/main.h
>coops.o: coops.cpp ./include/main_lnx.h ../os/include/main.h
>
>Когда в этот каталог заходит make -C gamma/os/lnx/
>Компилируется только main_lnx.o, такое ощущение что coops.cpp не видит вообще.

А что ему ещё компилировать? По-умолчанию (без указания цели) выполняется первая цель. В вашем случае нужно добавить в начало Makefile что-то вроде (для GNU make):


.PHONY: all

all: $(subst .cpp,.o,$(wildcard *.cpp))


и будет вам счастье. Точнее, будет вам то, что вы пытаетесь получить.


>3-ая проблема
>
>Как сделать рекурсивное брождение (от слова бродить) make, по подкаталогам,
>а не указание их на прямую $(SUBDIR) ?

Всё решает (опять же, для GNU make) $(shell ...) и find.

Вообще, если вы используете GNU make, настоятельно рекомендую почитать по нему info - очень увлекательное чтиво, не говоря уже о пользе. Если вы используете другой make и у него нет аналогичного функционала... даже и не знаю, что сказать. Разве что посочувствовать...

 

Ваше сообщение
Имя*:
EMail:
Для отправки новых сообщений в текущей нити на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру