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

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

23 ответа

Решение

Если у вас есть 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 и поиска инструментов компилятора.

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

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

Шаг 2: запуститеchoco install make

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

Я не связан с choco, но ТОЛЬКО ХОРОШО.

Ознакомьтесь с маркой GnuWin, которая предоставляет собственный порт для Windows (не требуя полноценной среды выполнения, такой как Cygwin)

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

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

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

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

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

libiconv2.dll libintl3.dll make.exe

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

make.exe

сделанный.

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

make.exe skel

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

make -f Makefile

https://cygwin.com/install.html

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

mingw32-make -f Makefile.win

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

Все вышеперечисленное пробовал. Что мне помогает:

  1. Загрузите файл mingw-get .
  2. Настройте это.
  3. Добавьте что-нибудь вроде this C:\MinGW\bin в переменные среды.
  4. Запустите (! Важно) git bash. Power shell, developer vs cmd, system cmd и т. Д. Не помогли.
  5. Тип mingw-get в командную строку.
  6. После типа mingw-get install mingw32-make.
  7. Скопируйте и вставьте все файлы из C:\MinGW\binв папку, где находится ваш Makefile. Выполнено! Теперь вы можете использовать make-команды в этой папке.

В 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

Если это "Makeake-файл NMake", то есть синтаксис совместим с NMake, он будет работать.

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

Makefiles в Windows

Если вы уже установили компилятор Windows GNU (MinGW) из MSYS2 , тоmakeкоманда предустановлена ​​какwingw32-make. Всегда сопоставляйте генерацию make-файла cmake с правильной командой make. Смешивание этих порождает проблемы.

Генерация make-файла MinGW с помощью команды MinGW make

Генерация make-файла Visual Studio с помощью команды make, эквивалентной VS

И это всегда возможно, если у вас есть исходный код. Просто удалите старый каталог сборки и начните сначала, указав на этот раз правильный параметр в cmake, например

      mkdir build
cd build
cmake -G "MinGW MakeFiles" path/to/src/whereCMakeLists.txtInstructionsAre   
mingw32-make     
myProject.exe   # RUN

Я столкнулся с проблемами во время компиляции, когда несколько команд make взаимодействуют. Чтобы предотвратить это, просто отредактируйте/удалите переменные среды, которые приводят к другим командам make. Например, чтобы предотвратить конфликты с mingw, оставьте толькоC:\msys64\mingw64\binно удалитьC:\msys64\usr\bin. Этот другой путь содержит msys make, и, как я уже сказал, вы не хотите комбинировать команды make во время компиляции.

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

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

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

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

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

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

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

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

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

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

Установите msys2 с помощью make dependency, добавьте оба в переменную PATH. (Второй вариант - GNU ToolChain для Windows. Версия MinGW уже включает mingw32-make.)

Установите Git Bash. Запустите mingw32-make из Git Bash.

  1. Скачать с https://sourceforge.net/projects/gnuwin32/
  2. Заранее установите путь к переменной для распознавания в командной строке (C:\Program Files (x86)\GnuWin32\bin)

Поэтому, если вы используете Vscode и Mingw, сначала убедитесь, что bin папка mingw включен в путь к среде, и рекомендуется изменить mingw32-make.exe чтобы облегчить задачу, а затем создать makefile и включите в него этот код.

      all:
    gcc -o filename filename.c
    ./filename

Затем сохраните файл makefile и откройте Vscode Code терминал и написать make. Тогда makefile будет запущен.

Процедура, которой я следовал, такова;

  1. Я установил make Gnuwin32, используя устанавливаемый файл .
  2. Добавлен путь «сделать» к переменной окружения PATH.
  3. Проверил установку с помощью «make --version»

Вы также можете установить через менеджер пакетов Scoop (аналог Choolatey). Перейдите в Scoop и найдите нужный вам пакет. В этом случае создайте и вставьте команду для его установки.

Команда для установкиmakeв Windows. Я тестировал в PowerShell.

      scoop install main/make

Для меня установка Ubuntu WSL на Windows была лучшим вариантом, это лучший инструмент для компиляции make-файла на Windows. Тысяча лучше, чем Cygwin64, потому что для компиляции make-файла вам понадобится другой пакет и скомпилированное программное обеспечение, такое как, возможно, gfortran, netcdf и т. д., т. д., в Ubuntu WSL вы можете установить все эти пакеты очень легко и быстро;)

Я полагаю, вы добавили mingw32/bin добавлен в переменные среды, иначе добавьте его, и я предполагаю, что это компилятор gcc, и у вас есть установщик mingw.

Первый шаг: скачать mingw32-make.exe из установщика mingw или проверьте mingw/bin папка сначала ли mingw32-make.exe существует или нет, кроме установки, переименуйте его в make.exe.

После переименования в make.exe, просто зайдите и запустите эту команду в каталоге, где makefileрасположен. Вместо переименования вы можете напрямую запустить его как mingw32-make.

В конце концов, команда - это просто исполняемый файл или программа, мы используем ее имя для выполнения программы, мы называем ее командой.

Перейдите на http://gnuwin32.sourceforge.net/packages/make.htm и загрузите make-3.81.exe, установите и добавьте в путь Windows.

Может быть, это сработает.

      pip install Makefile

Может быть, вы можете попробовать IDE NetBeans.

Другие вопросы по тегам