Подтвердить что ты не робот

Как скомпилировать makefile с помощью MinGW?

Я новичок в этом. Просто хотел спросить, как скомпилировать make файл. Я использую MinGW компилятор на языке Си. Нужно ли сохранять все мои файлы в MinGW\bin? потому что сейчас мои файлы находятся в другом каталоге.

Ценю помощь.

4b9b3361

Ответ 1

Выдержка из http://www.mingw.org/wiki/FAQ:

Какая разница между make и mingw32-make?

"Нативный" (т.е. порт, зависящий от MSVCRT) не хватает в некоторой функциональности и имеет измененную функциональность из-за отсутствия POSIX на Win32. Также существует версия make в дистрибутиве MSYS, которая зависит от времени выполнения MSYS. Этот порт работает больше, поскольку make предназначен для работы и дает меньше головных болей во время выполнения. Основываясь на этом, разработчики/разработчики/упаковщики MinGW решили, что было бы лучше переименовать собственную версию, чтобы как "родная" версия, так и версия MSYS могли присутствовать одновременно без столкновения имен файлов.

Итак, загляните в каталог C:\MinGW\bin и сначала убедитесь, что вы сделали исполняемый файл, вы установили (make.exe или mingw32-make.exe)

Перед использованием MinGW вы должны добавить C:\MinGW\bin; к переменной среды PATH, используя инструкции, указанные в http://www.mingw.org/wiki/Getting_Started/

Затем cd в ваш каталог, где у вас есть make файл, и попробуйте использовать mingw32-make.exe makefile.in или просто make.exe makefile.in (в зависимости от исполняемых файлов в C:\MinGW\bin).

Если вы хотите использовать GUI-решение, установите DevCPP IDE, а затем заново создайте.

Ответ 2

Вам нужно активно выбирать MSYS для получения make.exe. Таким образом, вы должны иметь хотя бы (родной) файл mingw32-make.exe, если MinGW был установлен правильно. И если вы установили MSYS, у вас будет make.exe(вероятно, в подпапке MSYS).

Обратите внимание: многие проекты требуют сначала создания make файла (например, с помощью configure script или automake.am файла), и именно этот шаг требует MSYS или cygwin. Заставляет вас задаться вопросом, почему они потрудились распространять родной make вообще.

После того, как у вас есть make файл, неясно, требует ли родной исполняемый файл другого разделителя путей, чем MSYS make (прямая косая черта или обратная косая черта). Любой автогенерированный make файл, вероятно, будет иметь пути в стиле unix, предполагая, что native make может обрабатывать их, скомпилированный вывод должен быть тем же.

Ответ 3

Пожалуйста, узнайте о automake и autoconf.

Makefile.am обрабатывается automake для создания Makefile, который обрабатывается make для создания ваших источников.

http://www.gnu.org/software/automake/