Как запустить make-файл в Windows?


187

У меня есть некоторые загруженные демонстрации, которые идут с Makefile.win и Makefile.sgi. Как я могу запустить их в Windows, чтобы скомпилировать демки?


1
Я должен упомянуть, что я больше похож на Linux, но мне нужно использовать Windows прямо сейчас, поэтому я немного не в курсе.
Ким

Ответы:


114

Если у вас есть Visual Studio, запустите командную строку Visual Studio из меню «Пуск», перейдите в каталог, содержащий Makefile.winи введите следующее:

nmake -f Makefile.win

Вы также можете использовать обычную командную строку и запустить vsvars32.bat (c: \ Program Files (x86) \ Microsoft Visual Studio 9.0 \ Common7 \ Tools for VS2008). Это настроит среду для запуска nmake и поиска инструментов компилятора.


5
Как запустить командную строку visual studio из меню «Пуск»?
Ким

Хорошо, я понял это. Но, конечно, он не скомпилируется из-за ошибок. Просто моя удача Спасибо хоть.
Ким

9
Для пользователей с VS2012 командная строка называется «Командная строка разработчика для VS2012». Пуск -> Поиск -> «команда», как я его нашел.
undeniablyrob

@NSD: Вы можете попробовать другие "make", но такие файлы обычно пишутся на диалекте nmake и при условии, что VS установлен и находится по пути. Вы можете обнаружить, что бесплатной VS Express достаточно.
Марсело Кантос

@MarceloCantos Я новичок в Linux и создании. Что делать, если у меня есть .am и .mk файл. У меня нет файла .win. Я пытаюсь сделать Wget, кстати.
Чику

53

Ознакомьтесь с Cygwin , Unix-подобной средой для Windows


6
Cygwin хорошо сработал для меня! Мне просто нужно было проверить во время установки некоторые пакеты Devel: «make», а также «gcc», как описано здесь .
Дэмиен Леру

6
Я также рекомендую установить cygwin с использованием chocolatey, поэтому команда get makeвыглядит так:choco install make --source=cygwin
zygimantus

после того, как я установил с choco, как я могу добавить это к моей командной оболочке? есть путь для добавления?
XaBerr

2
Если вы установили его с помощью choco, добавьте эту строку (кавычки) в переменную пути в системных переменных "C: \ tools \ cygwin \ bin"
Ali.Ghodrat

40

Проверьте GnuWin «s делает , что обеспечивает родной порт для ОС Windows (без необходимости полной среды выполнения , как Cygwin)


8
Кроме того, добавьте «C: \ Program Files (x86) \ GnuWin32 \ bin» в системную переменную PATH.
Ccy

29

Вот мой быстрый и временный способ запустить Makefile

  • скачать сделайте из SourceForge: gnuwin32
  • установить его
  • перейти в папку установки

C: \ Program Files (x86) \ GnuWin32 \ bin

  • скопируйте все файлы в папке с папкой, содержащей Makefile

libiconv2.dll libintl3.dll make.exe

  • откройте cmd (вы можете сделать это с помощью правого клика со смещением ) в папке, содержащей Makefile, и запустите

make.exe

сделано.

Кроме того, вы можете добавить аргументы после команды, такие как

make.exe skel


11
Вероятно, лучше добавить binкаталог в PATHпеременную окружения. Это сделает make.exeдоступным из любого места.
Yukulélé

1
Я думаю, что это сделано по умолчанию - по крайней мере, так было, когда я установил gnuwin32. Конечно, копирование файлов - это плохая практика.
JFFIGK

1
Это не сделано по умолчанию (или нет в моем случае). Добавив его в путь, вы можете запустить make из папки проекта.
Виктор

Работа как чавканье
trungducng

28

Этот вопрос может быть старым, но мое решение, которое является самым простым для любого пользователя Windows, я полагаю, не указано в списке.

Шаг 1: Установите менеджер пакетов шоколада для WINDOWS (совместимый с Windows 7+ / Windows Server 2003+) здесь

Шаг 2: бегиchoco install make

Шаг 3: Прибыль от ухоженного менеджера пакетов. Make будет добавлен в глобальный путь и работает на всех CLI (powershell, git bash, cmd…)

Я не связан с choco, но это просто хорошо.


8

Если вы устанавливаете Cygwin . Убедитесь, что в программе установки выбрано make. Затем вы можете запустить следующую команду, если у вас есть Makefile.

make -f Makefile

https://cygwin.com/install.html

6

В Visual Studio 2017 мне пришлось добавить эту папку в переменную env пути Windows 10:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.10.25017\bin\HostX64\x64

Там также HostX86


3

Во-первых, добавьте путь общих инструментов visual studio ( c:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools) в системный путь. Чтобы узнать, как добавить путь в системный путь, посетите этот веб-сайт: http://www.computerhope.com/issues/ch000549.htm . Тебе просто нужно это один раз.

После этого, когда вам нужно, откройте командную строку и выполните команду, vsvars32.batчтобы добавить пути всех необходимых инструментов Visual Studio в системный путь.

Затем вы можете позвонить nmake -f makefile.mak

PS: Путь к обычным инструментам Visual Studio может отличаться в вашей системе. Пожалуйста, измените его соответственно.


3

Если это «Makeake-файл NMake», то есть синтаксис и команда совместимы с NMake, он будет работать в Windows. Обычно Makefile.win( .winсуффикс) указывает, что это make-файл, совместимый с Windows NMake. Так что вы можете попробовать nmake -f Makefile.win.

Часто предоставляются стандартные файлы Makefile для Linux, которые NMakeвыглядят многообещающе. Тем не менее, следующая ссылка берет простой Linux Makefile и объясняет некоторые фундаментальные проблемы, с которыми можно столкнуться. Он также предлагает несколько альтернатив для обработки Linux Makefiles в Windows.

Makefiles в Windows


1

Я попробовал с cygwin & gnuwin, и у меня ничего не вышло, наверное, потому что в make-файле использовался в основном специфический код Linux.

Он работал с Ubuntu Bash для Windows 10 . Это чудо, если вы пришли из MAC, так как это мой случай:

  1. Чтобы установить Ubuntu Bash: https://itsfoss.com/install-bash-on-windows/
  2. Оказавшись в консоли, для установки make просто наберите «make», и он даст инструкции для его загрузки.

Дополнительно:

  1. Полезное включение копирования / вставки в Bash: Копировать Вставить в Bash в Ubuntu в Windows
  2. В моем случае эта модель называется Maven, поэтому я должен установить ее также: /ubuntu/722993/unable-to-locate-package-maven
  3. Для доступа к файловой системе C: Windows, например: «cd / mnt / c /»

Надеюсь, поможет


0

Я использую набор инструментов MinGW , который предоставляет mingw32-makeинструмент для сборки, если он есть в вашей PATHсистемной переменной , в командной строке Windows просто перейдите в каталог, содержащий файлы, и введите следующую команду:

mingw32-make -f Makefile.win

и это сделано.


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.