Есть ли материал о makefile в Windows? - PullRequest
1 голос
/ 12 апреля 2009

Есть ли разница между make-файлом в Windows и Linux?

Если я знаю, как использовать его в Linux, нужно ли учить

что-то новое, когда в системе Windows?

Ответы [ 3 ]

2 голосов
/ 13 апреля 2009

Хорошие люди в GnuWin32 имеют Gnu make , созданную для Windows как собственный двоичный файл. Он работает хорошо, но у него есть несколько незначительных особенностей из-за благих намерений, которые пытаются приравнять цель с именем foo к файлу foo.exe. Пакет GnuWin32 содержит хороший PDF-файл руководства, IIRC.

Я использую его в XP вместе с GCC из проекта MinGW , а также с несколькими различными встроенными системами кросс-компиляции. MinGW также предоставляет встроенную сборку Gnu Make.

Мы используем Cygwin для нескольких проектов, в частности, когда поставщик системы на кристалле предоставил полный рабочий инструментарий и среду сборки, размещенную в Cygwin. Перемещение его в собственную сборку в форме Windows будет непомерно дорогим и затруднит прием обновлений от поставщика.

Если вы хотите использовать в основном нативные инструменты Windows, но должны начать с запуска configure на существующем исходном комплекте, взгляните на MSYS. Это началось как ответвление Cygwin от разработчиков MinGW, и оно намеревается предоставить минимальный набор unix-подобных инструментов с оболочкой bash, так что configure можно использовать в Windows. Он не такой полный, как Cygwin, но он намного легче.

Вы обнаружите, что руководство по Gnu Make в основном соответствует действительности. Однако вы должны иметь в виду, что содержимое Makefile написано не на одном языке. Материал, который определяет переменные и выкладывает дерево зависимостей - это один язык. Каждая строка действия представляет собой миниатюрный сценарий оболочки на языке оболочки по умолчанию (это может быть CMD.EXE, а не / bin / sh в Windows), и каждая команда имеет параметры и аргументы.

Если вам комфортно в вашей среде * nix build, то Cygwin может оказаться на пути наименьшей боли. Но MSYS часто достаточно, и есть что сказать, чтобы принять нативные инструменты целевой платформы, чтобы у вас было представление о том, как ваши пользователи видят Windows, и в этом случае MinGW и GnuWin32 - полезные ресурсы, о которых нужно знать.

1 голос
/ 12 апреля 2009

В дополнение к тому, что iftrue , обратите внимание, что у Microsoft есть инструмент сборки на основе Makefile под названием nmake с некоторыми изменениями синтаксиса / семантики по сравнению с традиционной * nix make инструмент. На этой странице перечислены некоторые различия.

0 голосов
/ 12 апреля 2009

Что ж, если вы загрузите " cygwin ", вы можете запустить инструмент "make" непосредственно в Windows, но вы можете захотеть взглянуть на настоящий кросс-платформенный инструмент сборки, такой как " CMake ». Это похоже на make, но оно немного более элегантное и по своей сути кроссплатформенное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...