С днём рождения, любимый город!
И пусть некоторые лошары с чего-то вдруг взяли, что праздновать надо было аж 24, но мы-то знаем что они далпайопы и днюха у тя тока сегодня %)
Крепись – триста пять лет стоял и ещё больше выстоишь.
Архив за 27.05.2008
Днюха Питера!
Опубликовал LG.BALUKATION на 2008/05/27
Рубрика: SPb, Прочее | Помечено: 1703, 2008, 305, birthday, SPb | Комментарии (10) »
make
Опубликовал LG.BALUKATION на 2008/05/27
Вроде бы в минувшую пятницу я запалился, что жахну пост о make. Я не являюсь экспертом иль даж хотяб паверюзером в этой проге, просто когда-то мне было интересно что за хрень там вечно пишется и хотелось научиться самому писать простенькие Makefile =)
Итак, не секрет, что для сбора и развёртки более-менее мелкой проги обычно надо выполнить простую последовательность действий. Проблема в том, что эти действия приходится выполнять часто – для каждого испытания проги и это несколько утомляет…
Объёмы кода растут и часто его уже не сваливают в один файл, разделяя на несколько связанных модулей или быть может даже библиотеки. Тут уже приходится не только заботится о компиляции каждого файла, но и связывать всё это дело в некую общую сущность. Интересной мыслью является ещё и отслеживание изменений относительно прошлых сборок, чтобы компилить только обновлённые модули и тем самым экономить время при пересборке. Однако этот подход естественно обладает и недостатками, так что юзают его не всегда.
Традиционно в сях нет решения этих проблем (например в паскале есть кое что для раздельной компиляции, а в сях и асме нету). Зато есть наборы стороннего софта, призванного покрыть эти недостатки. Всякие там IDE обычно поддерживают так называемые «проекты», описывающие кроме самого исходного кода и ресурсов так же необходимые для сборки действия. Однако есть более традиционная технология, названная make – часто даже проекты в IDE всего-лишь «обёртки» над make.
Существует множество разновидностей make и все они обычно не совместимы в деталях, но в общих моментах они как правило идентичны. Лично я вроде бы и не пользуюсь «фирменными» наворотами, так что рассказанное тут должно быть совместимо со всеми вариациями make. Если что – у меня GNU Make 3.81 (в системе Gentoo Linux).
Прочтите эту запись до конца »
Рубрика: Friends, IT, Open Source, Programming, SPb, Software, Прочее, Учёба | Помечено: build, c++, cpp, cxx, make, Programming, Software | 1 комментарий »




