Форум программистов, компьютерный форум CyberForum.ru

Написание Makefile - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 16, средняя оценка - 4.81
Илья Остапишен
 Аватар для Илья Остапишен
10 / 10 / 1
Регистрация: 26.02.2011
Сообщений: 112
22.04.2012, 13:07     Написание Makefile #1
В этой статье будет писаться все что нужно для написания makefile
Нам понадобиться:
OС - я использую Linux, вы можете использовать Cygwin под Windows
Vim - как текстовый редактор
Make - сам make

1. Написание простейшего makefile для "Hello, World"

Открываем терминал\сигвин и пишем:
Bash
1
$ vim main.cpp
Далее нажимаем i и вводим

C++
1
2
3
4
5
6
#include <iostream>
 
int main() {
    std::cout << "Hello, World";
    return 0;
}
Нажимаем Esc потом : и пишем wq и нажимаем Enter вы вернетесь в терминал\сигвин. Теперь пишем сам makefile:
Bash
1
vim makefile
Код
all:
             g++ main.cpp -ohw
первая строка показывает что команды после нее компилируют всю программу. Или как говорят "старички" - идентификатор цели

Теперь сама компиляция. Открываем vim-ом наш main.cpp и в виме пишем :make
теперь выходим из вима :q и в терминале пишем
Bash
1
./hw
Вы увидете надпись Hello, World
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.04.2012, 13:07     Написание Makefile
Посмотрите здесь:

Makefile C++
C++ Создание makefile
Зацикливается make (makefile) C++
Простой Makefile C++
makefile C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Bers
Заблокирован
22.04.2012, 13:09     Написание Makefile #2
Цитата Сообщение от Илья Остапишен Посмотреть сообщение
первая строка показывает что команды после нее компилируют всю программу.
Всегда думал, шо сие есть идентификатор цели.
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
22.04.2012, 13:13     Написание Makefile #3
Илья Остапишен, а если не изменять файл с исходным кодом, то make все равно будет его перекомпилировать. Прикольно, ага?
Илья Остапишен
 Аватар для Илья Остапишен
10 / 10 / 1
Регистрация: 26.02.2011
Сообщений: 112
22.04.2012, 13:25  [ТС]     Написание Makefile #4
Цитата Сообщение от Bers Посмотреть сообщение
Всегда думал, шо сие есть идентификатор цели
Извините, забыл
soon не могу сейчас проверить, комп сейчас занят
soon
 Аватар для soon
2536 / 1301 / 81
Регистрация: 09.05.2011
Сообщений: 3,086
Записей в блоге: 1
22.04.2012, 13:40     Написание Makefile #5
не могу сейчас проверить, комп сейчас занят
А зачем проверять, это и так понятно. Зависимости ведь нет.
Код
: test

test:
    g++ test.cpp -o test
Для начала так.
Илья Остапишен
 Аватар для Илья Остапишен
10 / 10 / 1
Регистрация: 26.02.2011
Сообщений: 112
22.04.2012, 13:42  [ТС]     Написание Makefile #6
Цитата Сообщение от soon Посмотреть сообщение
Зависимости ведь нет.
Я забыл о етом, видно еще рано мне писать статьи
Yandex
Объявления
22.04.2012, 13:42     Написание Makefile
Ответ Создать тему
Опции темы

Текущее время: 21:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru