|
Makefile |
|
|
|
Aug 14 2015, 04:32
|
Группа: Новичок
Сообщений: 7
Регистрация: 13-08-14
Пользователь №: 82 535

|
Кто может разъяснить зачем нужен makefile?! На просторах интернета внятной информации не нашел. К примеру в некоторых темах пишут что при правки makefile нужно указывать тип микроконтроллера, рабочаю частоту и т. д. Я работаю в atmel studio и там в makefile нет таких пунктов. Просто хочется для общего развития понимать зачем он нужен и почему он бывает разный.
|
|
|
|
|
 |
Ответов
|
Aug 14 2015, 05:14
|

Знающий
   
Группа: Свой
Сообщений: 723
Регистрация: 29-08-05
Из: Березовский
Пользователь №: 8 065

|
Цитата(alexxx86 @ Aug 14 2015, 09:32)  Кто может разъяснить зачем нужен makefile?! Makefile изначально использовался в среде типа UNIX, которые построены на парадигме управления задачами посредством команд, которые вводятся в консоли (символьной -- а графических консолей тогда и не было) с клавиатыры. Результат выполнения также отображался в символьном виде на экране тойже консоли. Вместо экрана висплея можно было подключить принтер. А почему бы нет! Ну Вы поняли! Кнопочек и менюшечек не было. Мышей -- тоже. А управлять заданиями, то есть работать на компе было нужно. Вопрос -- как? Единственный выход в те времена -- использование клавиатуры и экрана (принтера). Понтное дело, что при таком раскладе ни о какой графике говорить уже не приходилось. Команды системе отдавались в виде слов, и получение резултата вываливалось на экран тоже в виде слов. Ну это прописные истины. Я их сказал тоько для того, что бы мы понимали друг друга однозначно. Идем дальше. Набирать какжый раз серию команд было неудобно. Поэтому встал вопрос об автоматизации действий программиста (пользователя). Одно из направлений автоматизации было использование скриптовых файлов, в которых команды записывались по-сторочно. Это в некоторой степени аналог виндовых BAT-файлов. Другом направленим автоматизации работы программиста-разработчика было направление makefile. В файле Makefile описывается не последовательность команд, а цели, которые нужно выполнить. Иначе говоря последовательность дейстий для достижения цели определяется не последовательностью строк, а наоснове других соображений. Ну например, если объектный файл уже имеется, то повторно компилировать исходник уже не надо.( Ну это грубый пример. более изящный я сейчас не в состоянии придумать.) В общем, в файле Makefile перечисляются исходные положения -- типа каким компилятором будем пользоваться, где и какие расположены библиотеки, каким линковщиком будем собирать проект, к стати -- имя проекта, состав файлов проекта, зависимости файлов друг от друга, тип процессора, тактовая частота... ну и другие параметры. Всего не перечислить! Да, в общем-то, и нет это нужно. Makefile в самом минимальном варианте тоже рулят. Мне иногда приходится создавать тестовые пректики. Поэтому накидать с нуля Makefile из десятка строк иногда бывает проще, чем адаптировать мега-Makefile из соседнего проекта. В Видовсе принято программировать мышкой. Поэтой причине в Виндовсе Makefile-ы не очень распространены. И правда, какой смысл в файле, если все параметры контролируются средой разработки (IDE), и сама среда уже знает какой компилятор использовать? Если Вы не собираетесь пробовать Линукс, то и заморачиваться особо на эти Makefiles Вам нет никакого смысла. Это в среде Линукса зание Makefile жизненно необходимо.
--------------------
Хочешь рассмешить Бога -- расскажи ему о своих планах!
|
|
|
|
|
Aug 14 2015, 05:34
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
QUOTE (zhevak @ Aug 14 2015, 08:14)  В Видовсе принято программировать мышкой. Поэтой причине в Виндовсе Makefile-ы не очень распространены. И правда, какой смысл в файле, если все параметры контролируются средой разработки (IDE), и сама среда уже знает какой компилятор использовать? Обалдеть, а как быть с тем фактом, что все эти движения "мышкой" генерят на самом деле именно makefile (или их эрацы), только жутко корявые и убогие? Посему нормальный путь это не уподобление неандертальцам выражающими свои мысли наскальной живописью, а испольовать разившуюся за тысячилетия письменность. Я напимер, уже больше десятка лет из линукса ущел окончательно, пользую около дюжины компиляторов в win и все с make. Причем пользовал в те времена, когда линукса да и виндовса просто не было, компиляторы были хреноватые, но ассемблеры были. QUOTE Это в среде Линукса зание Makefile жизненно необходимо. Наскальная живопись, увы, возможна везде и в этом отношении IDE позволяющие "программировать" мышкой везде одинаковы и уже в подавляющем числе случаев уже ПОРТИРУЮТСЯ из линуксов в виндовс
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
Сообщений в этой теме
alexxx86 Makefile Aug 14 2015, 04:32 Непомнящий Евгений На просторах интернета информации о make выше крыш... Aug 14 2015, 05:10     zltigo QUOTE (_Pasha @ Aug 16 2015, 14:39) потом... Aug 16 2015, 12:17   zltigo QUOTE (_Pasha @ Aug 14 2015, 09:53) А до... Aug 14 2015, 14:35    alexxx86 zltigo, Ну если я ни чего не понял, тогда объяснит... Aug 14 2015, 14:46     zltigo QUOTE (alexxx86 @ Aug 14 2015, 17:46) zlt... Aug 14 2015, 15:15 alexxx86 zhevak, спасибо за ответ! В общих чертах я по... Aug 14 2015, 05:34  ataradov QUOTE (alexxx86 @ Aug 13 2015, 22:34) Я р... Aug 14 2015, 05:37  Непомнящий Евгений Цитата(alexxx86 @ Aug 14 2015, 08:34) zhe... Aug 14 2015, 05:52   zltigo QUOTE (Непомнящий Евгений @ Aug 14 2015, 08... Aug 14 2015, 06:07  zhevak Цитата(alexxx86 @ Aug 14 2015, 10:34) Мне... Aug 14 2015, 07:55   alexxx86 zhevak, Получается что если проект состоит из не ... Aug 14 2015, 10:14    kolobok0 Цитата(alexxx86 @ Aug 14 2015, 13:14) ...... Aug 14 2015, 15:08    zhevak Цитата(alexxx86 @ Aug 14 2015, 15:14) zhe... Aug 14 2015, 16:33     alexxx86 zhevak, Спасибо вам большое, за подробные и развер... Aug 14 2015, 17:25     zltigo QUOTE (zhevak @ Aug 14 2015, 19:33) 4) в ... Aug 14 2015, 19:03      Canis Dirus Цитата(zltigo @ Aug 15 2015, 00:03) А за ... Aug 15 2015, 10:09       zltigo QUOTE (Canis Dirus @ Aug 15 2015, 13:09) ... Aug 15 2015, 14:03        zhevak ЦитатаА за такое, как Вы описали, вообще надо бить... Aug 15 2015, 15:31         zltigo QUOTE (zhevak @ Aug 15 2015, 18:31) Если ... Aug 15 2015, 15:48          zhevak @zltigo
Мои извинения. Наверно я не правильно Вас ... Aug 15 2015, 16:39           zltigo QUOTE (zhevak @ Aug 15 2015, 19:39) @zlti... Aug 15 2015, 16:45 ataradov QUOTE (alexxx86 @ Aug 13 2015, 21:32) Я р... Aug 14 2015, 05:26 gerber Рискну пойти против течения... но в абсолютному бо... Aug 16 2015, 12:30 kolobok0 Цитата(gerber @ Aug 16 2015, 15:30) ...пр... Aug 16 2015, 12:42 zltigo QUOTE (gerber @ Aug 16 2015, 15:30) ошибо... Aug 16 2015, 12:52
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|