Windows'ta GNU Make nasıl kullanılır?


96

Ben eklendi, MinGW ve MSYS yüklü C:\MinGW\biniçin PATHama hala Windows üzerinde Makefile çalıştıramaz cmd. Örneğin cmd.exe'yi çalıştırmak istiyorum ve orada make allyazıyorum , ancak cmd'm böyle bir komut olmadığını söylüyor.

Ne yapmalıyım? MSYS kabuğu kullanmak istemiyorum, konu bu değil. Ubuntu'da yapabildiğim için GNU Make'i Windows cmd'de nasıl kullanacağıma dair bir fikrin var mı? Ben ilgilenmiyorum Cygwin.


1
Sistem ayarlarınızdaki ortam değişkenleri altında PATH'e eklemeniz gerekecek.
slugonamission

@slugonamission: Zaten yaptım, yazdım :)
yak

Make yerine make.exe çalıştırılsın mı?
slugonamission

2
@slugonamission: Ben yaptım! C:\MinGW\msys\1.0\binPATH ekledim ve işe yaradı! : D Ama hala sorun var, şunu makegösteriyor: pastie.org/private/ixaaqbq2xl3geyg0emnow
yak

1
Senin içinde allhedefe, Hello.exe aynı satırda olması gerekir allhedef için bir bağımlılık olarak dikkate alınması gerekir. Değilse, için görevin bir parçası haline gelir all.
slugonamission

Yanıtlar:


101

İşte onu nasıl çalıştırdım:

  copy c:\MinGW\bin\mingw32-make.exe c:\MinGW\bin\make.exe

Sonra bir komut istemi açabilir ve make yazabilirim:

  C:\Users\Dell>make
  make: *** No targets specified and no makefile found.  Stop.

Bu şu anda çalıştığı anlamına geliyor!


10
@Imray Ben hala tam olarak net değil: make dosyada dağıtılır mingw32-make.exe. Dizin yana c:\MinGW\binsistem yolda olduğunu, şunlardan birini yapabilirsiniz kullanılması mingw32-makebir komuta veya kopyalama (yeniden adlandırmanın daha güvenli bir sürümü) olarak mingw32-make.exesadece kadar make.exe.
Tomáš Zato - Monica'yı eski durumuna getir

1
Bloat nedenlerinden ötürü msys veya mingw'i ortam değişkenlerinizin bir parçası yapmaktan uzak durmalısınız, ancak aynı zamanda msys dizini kendi içinde yereldir. Msys'deki yol, mingw64'ün bölmesinde ise make'i kullanmanıza izin verir, ancak bu sorun hakkında konuşmaz. Ayrıca sorun hakkında konuşmadan, make.exe olarak mingw32-make.exe'ye SABİT bir bağlantı oluşturmalısınız, hayatı kolaylaştırır ve exe'yi klonlamak zorunda kalmazsınız. Deneyin:mklink /H C:\MinGW\bin\mingw32-make.exe C:\MinGW\bin\make.exe
user2262111


6

Bu soru eski olmasına rağmen hala MSYS2 kullanan birçok kişi tarafından sorulmaktadır .

Bu yıl CygWin'in yerini almak için kullanmaya başladım ve oldukça tatmin oluyorum.

Yüklemek makeiçin MSYS2 kabuğunu açın ve aşağıdaki komutları yazın:

# Update the package database and core system packages
pacman -Syu
# Close shell and open again if needed

# Update again
pacman -Su

# Install make
pacman -S make

# Test it (show version)
make -v

3

Uygulama klasörünü aşağıdaki komut isteminden yolunuza ekleyebilirsiniz:

setx PATH "% PATH%; c: \ MinGW \ bin"

Değiştirilen yol ayarının etkili olması için muhtemelen yeni bir komut penceresi açmanız gerekeceğini unutmayın.



0

user1594322 doğru bir cevap verdi ancak denediğimde yönetici / izin sorunları ile karşılaştım. 'Mingw32-make.exe' dosyasını kopyalayıp yapıştırabildim, yönetici sorunlarını geçersiz kılıp / atlayarak ve ardından kopyayı 'make.exe' olarak düzenledim. Bir Win7 misafirinde VirtualBox'ta.


0

Make'in kendisi bağımsız bir çalıştırılabilir ( gnuwin32.sourceforge.netpaketmake ) olarak mevcut olsa da , onu uygun bir geliştirme ortamında kullanmak msys2 kullanmak anlamına gelir .

Git 2.24 (2019 4. Çeyrek) şunu göstermektedir:

Bkz 4668931 işlemek , b35304b işlemek , ab7d854 işlemek , be5d88e işlemek , 5d65ad1 taahhüt , 030a628 taahhüt , 61d1d92 taahhüt , e4347c9 taahhüt , ed712ef taahhüt , 5b8f9e2 taahhüt , 41616ef taahhüt , c097b95 taahhüt (4 Ekim 2019) ve dbcd970 taahhüt (2019 30 Eylül) tarafından Johannes Schindelin ( dscho) .
(Göre Birleştirilmiş - Junio Cı Hamano gitster- içinde 6d5291b tamamlama 2019 Ekim 15)

test-tool run-command: test takımını çalıştırmayı (bölümlerini) öğrenin

İmza: Johannes Schindelin

Windows için Git, Git'i oluşturmaya ve test paketini çalıştırmaya izin veren bir geliştirme ortamı sağlamak için çemberlerden geçer.

Bu amaçla, GNU make ve GCC dahil olmak üzere tüm bir MSYS2 sistemi "Windows SDK için Git" olarak sunulur.
Bir bedeli var: Söz konusu SDK'nın ilk indirilmesi birkaç yüz megabayt ağırlığında ve paketlenmemiş SDK ~ 2GB disk alanı kaplıyor.

Windows'ta çok daha yerel bir geliştirme ortamı Visual Studio'dur. Katkıda bulunanların bu ortamı kullanmasına yardımcı olmak vcxprojiçin, proje dosyalarıyla (ve oluşturulan diğer dosyalarla) bir taahhüt oluşturan bir Makefile hedefimiz zaten var ve Windows için Git vs/masterdalı bu hedef kullanılarak sürekli olarak yeniden oluşturuldu.

Buradaki fikir, Visual Studio'da Git oluşturmaya izin vermek ve Taşınabilir Git kullanarak ayrı testler çalıştırmaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.