РЕДАКТИРОВАТЬ1: Несколько закладок, которые могут оказаться полезными:
GNU make tutorial (этот использует gcc и make, поэтому он должен быть прямо в вашем переулке)
Еще один
Win-порт некоторых утилит GNU Can упоминал; Я лично пользуюсь ими, и у меня не было проблем с ними на платформе Windows.
Да, вы можете скомпилировать без make-файла. Если ваша программа проста (например, только один файл), вы можете скомпилировать ее, вызвав компилятор и указав имя программы в той же строке (не помню, как это происходит с gcc). Конечно, чтобы упростить задачу, это может быть сопоставлено с ключом в vim, поэтому вам не нужно переходить к командной строке и обратно.
Если вы работаете над большим проектом, который состоит из нескольких файлов и тому подобного, тогда полезен make-файл. Он будет «искать» в файлах, определять зависимости, включать их в сборку, возможно, помещать исходные файлы в один каталог, а полученный exe-файл - в другой и тому подобное. Так что это скорее система компоновки и построения, чем просто компиляция.
Хотя GNU make, упомянутый в ответе Can Berk Guder, является популярным, существует множество других тэков для «сборки make-файлов» («makefile» стал типом синонима для такой операции) - здесь вы можете увидеть некоторые другие опции по этой ссылке . Благодаря своей роли в истории, vim имеет хорошую поддержку: make, но другие также могут быть легко использованы (на эту тему имеется множество текстов на VimWikia .
Ну вот и все. Просто мои 0,2 евро:)