Почему изменение макроса (#define) в заголовочном файле не требует новой сборки? - PullRequest
0 голосов
/ 12 апреля 2011

Я немного новичок в C и только что обнаружил кое-что интересное. Я изменил значение простого макроса, который был #defined в заголовочном файле

#define MRB 1000

до

#define MRB 100

и когда я снова запустил make, он сказал, что изменений не было («ничего не поделаешь для« всех »»). Как именно макросы работают так, что они не должны быть частью сборки?

Ответы [ 2 ]

4 голосов
/ 12 апреля 2011

Это гораздо больше связано с тем, как работает make, чем с работой макросов.Если это не требует перестройки, то вы неправильно указали свои зависимости.Читайте о makedepend.

1 голос
/ 12 апреля 2011

Если файл включения действительно используется, то он должен запустить сборку.Если это не так, правила зависимости являются неполными.

...