Korzystanie z make z Windows PowerShell

11

Pod Linuksem źródła projektów często pochodzą z Makefile„s”. Pliki makefile zawierają dyrektywy do budowania tych projektów za pomocą polecenia make. Obecnie jestem zmuszony do korzystania z systemu Windows i aby móc korzystać z tego systemu operacyjnego, skonfigurowałem i ulepszyłem program „PowerShell” (instalując dodatkowe programy, takie jak vimlub svnmoduł o nazwie PSReadLine, pisząc profil PowerShell itp.).

Jednak nie mogłem znaleźć, czy można zainstalować makew PowerShell. Wiem, że będę musiał zainstalować programy, które makebędą wywoływać, takie jak powiedzmy g++lub pdflatex, ale będzie to później. Na razie chciałbym zacząć od makepracy.

Trochę badań ujawniło dwie możliwości:

  1. Przyjęta odpowiedź na to bardzo podobne pytanie: Jak korzystać z plików makefile w systemie Windows , sugeruje użycie Cygwin. To jest możliwe, Cygwin jest świetny, ale ponieważ postanowiłem dać PowerShellowi szansę, chciałbym wiedzieć, czy jest to również możliwe w przypadku PowerShell , a nie Cygwin . Dlatego to pytanie nie jest duplikatem, ponieważ to drugie pytanie dotyczyło pewnej możliwości użycia makew systemie Windows, podczas gdy w szczególności pytam o PowerShell.

  2. Istnieje makeklon dla programu PowerShell o nazwie poshmake , ale składnia plików Poshmake różni się od zwykłych plików Makefiles, co jest nie do przejścia. Chcę prawdy make, ponieważ utrzymanie dwóch wersji plików Makefiles dla wszystkich projektów, które mam wokół, nie jest opcją.

Więc: czy jest możliwe zainstalowanie GNU make, który zrozumie składnię typowych plików Makefile, które mogę wywoływać makez poziomu PowerShell ?

Malte Skoruppa
źródło

Odpowiedzi:

8

Spójrz na „Make for Windows” . Po zainstalowaniu wystarczy wywołać „make” z CMD lub PowerShell.

koleś
źródło
1
Ach tak, znalazłem to, ale odrzuciłem tę możliwość, ponieważ ostatnia aktualizacja tego projektu miała miejsce około 8 lat temu. Ale masz rację - zgaduję, że spróbuję, kiedy wrócę do pracy i
zdam
Właśnie zauważyłem, że makepod moją nowoczesną instalacją Ubuntu 14.04 jest również wersja 3.81 z 2006 roku. Sądzę, że jest ona po prostu bardzo stabilna i ma wszystkie potrzebne funkcje, więc po prostu nie było potrzeby dalszych aktualizacji;)
Malte Skoruppa,
2
Działa, chociaż PowerShell nie znalazł makepolecenia automatycznie. Musiałem skonfigurować makealias wskazujący na rzeczywisty make.exeplik wykonywalny w moim profilu PowerShell. Dzięki!
Malte Skoruppa
3
notepad $profile(lub edytuj swój profil PowerShell, jak chcesz) i dodaj new-item alias:make -value 'C:\Program Files (x86)\GnuWin32\bin\make.exe'- upewnij się, że to właściwa ścieżka do Twojego make.exe
alexanderbird
5
Możesz po prostu dodać C:\Program Files (x86)\GnuWin32\bindo swojej ścieżki.
forzagreen
0

Zainstaluj Make dla systemu Windows z GNU Make i dodaj C: \ Program Files (x86) \ GnuWin32 \ bin do ścieżki Ścieżka edycji ubikacji

Víctor Alejandro Sagal Muñoz
źródło