web-dev-qa-db-fra.com

Commande "Make" pour Windows - options possibles?

J'essaye d'installer Derby.js for Node sur mon ordinateur Windows. Selon les instructions de configuration de Derby.js, pour utiliser coffescript, je dois procéder comme suit:

$ cd ~
$ derby new --coffee first-project 
$ cd first-project 
$ make

Cela a fonctionné, jusqu’à la partie "make", qui nécessite évidemment un programme make. J'ai téléchargé un fichier make.exe censé le faire fonctionner, mais il me dit qu'il ne peut pas trouver le fichier. J'ai ouvert le fichier make dans un éditeur de texte pour voir si le chemin d'accès indiqué existait. Je me demande s'il doit référencer le chemin d'accès au fichier différemment puisqu'il se trouve sous Windows et qu'il est exécuté à l'aide de l'invite de commande? Est-ce que quelqu'un sait ce que je pourrais être capable de faire? Tout ce à quoi je peux penser est de l’installer sur une VM de Linux, puis de copier les fichiers, mais c’est un peu pénible à faire.

9
User093203920

Comme vous l'avez constaté, une make autonome ne suffisait pas; vous aviez besoin de Cygwin.

make est un programme qui interprète un fichier Make et exécute les commandes qu'il contient. Mais, quelles sont ces commandes? Si vous examinez votre fichier makefile, vous verrez des commandes de style UNIX disponibles sous Linux, Mac OS X ou Cygwin, mais non disponibles sur un système Windows standard. Ainsi, simplement saisir une make ne suffisait pas.

11
steveha

J'ai donc téléchargé Cygwin et utilisé le système "make" qui l'accompagnait. Cela a fonctionné parfaitement! Honnêtement, je ne sais vraiment pas pourquoi la commande "make" de GnuWin32 n'a pas fonctionné, mais je suppose que cela serait utile pour ceux qui rencontreront le même problème à l'avenir.

7
User093203920

L'implémentation de Make par Microsoft est nmake . Je ne pense pas que ce soit aussi avancé que beaucoup d'implémentations Make de divers Unices, mais cela devrait fonctionner pour de simples Makefiles.

3
icktoofay

Si vous cherchez des options possibles, j'en ai une qui utilisera PowerShell . «Make» exécute les commandes du makefile, c'est pourquoi j'ai utilisé PowerShell pour accomplir des tâches similaires. Cependant, sachez que je ne l’ai fait que pour mon projet Django. Lisez ci-dessous si cela vous intéresse et voici l'exemple:

  1. Création d'un fichier PowerShell de type initial.ps1.
  2. Insérer le contenu que vous voyez ou attendez dans le makefile. Voici l'exemple que j'ai utilisé pour mon projet Django:

# Bypass the execution policy (do this if needed)
Set-ExecutionPolicy RemoteSigned

# Setup variables
$proj = "proj"
$app = "app"

# Starting Virtual Environment
virtualenv $proj
cd .\$proj
.\Scripts\activate

# Install project
pip install --upgrade pip
pip install Django

# Starting app
Django-admin startproject $app
cd .\$app

# Build the project and the app
python .\manage.py makemigrations
python .\manage.py migrate
python .\manage.py createsuperuser
  1. Ouvrez CMD et exécutez le ps1.

C’est très pratique au moins pour moi, donc je n’ai pas besoin de taper toutes ces commandes encore et encore lors de la création de nouveaux projets. J'espère que cela t'aides.

0
ian0411