Windows'da bir makefile nasıl çalıştırılır?


187

İndirdiğim bazı demolarım var ve bir Makefile.win ve Makefile.sgi ile geliyorlar. Demoları derlemek için bunları Windows'ta nasıl çalıştırabilirim?


1
Daha çok Linux kullanıcısı olduğumu belirtmeliyim ama şu anda Windows'u kullanmam gerekiyor, bu yüzden biraz clueless.
Kim

1
Çok açık bir rehber burada
Sherzod

Yanıtlar:


114

Visual Studio'nuz varsa, Başlat menüsünden Visual Studio Komut istemini çalıştırın, içeren dizine geçin Makefile.winve şunu yazın:

nmake -f Makefile.win

Ayrıca normal komut istemini kullanabilir ve vsvars32.bat (c: \ Program Files (x86) \ Microsoft Visual Studio 9.0 \ Common7 \ Tools for VS2008) komutunu çalıştırabilirsiniz. Bu, ortamı nmake çalıştırmak ve derleyici araçlarını bulmak için kuracaktır.


5
Başlat menüsünden visual studio komut istemini nasıl çalıştırabilirim?
Kim

Tamam anladım. Ama elbette hatalar yüzünden derlenmeyecekti. Sadece benim şansım. Yine de teşekkürler.
Kim

9
VS2012 olanlar için komut istemi "VS2012 için Geliştirici Komut İstemi" olarak adlandırılır. Başlat -> Ara -> "komut" bu şekilde buldum.
inkar edilemezrob

@NSD: Diğer "markaları" deneyebilirsiniz, ancak bu tür dosyalar genellikle nmake'in lehçesine karşı ve VS'nin yüklü olduğu ve yolda olduğu varsayımıyla yazılır. Ücretsiz VS Express'in yeterli olduğunu görebilirsiniz.
Marcelo Cantos

@MarceloCantos Ben Linux ve Making için bir çaylakım. .Am ve .mk dosyam varsa. .Win dosyam yok. Uyanmaya çalışıyorum, btw.
Cheeku

53

Windows için Unix benzeri bir ortam olan cygwin'e göz atın


6
cygwin benim için iyi çalıştı !. Sadece kurulum sırasında bazı paketleri kontrol etmek zorunda kaldım Devel: 'make' ve ayrıca 'gcc' burada açıklandığı gibi .
Damien Leroux

6
Ben de çikolata kullanarak cygwin yüklemenizi öneririz, bu yüzden almak için komut makeşudur:choco install make --source=cygwin
zygimantus

choco ile yükledikten sonra komut kabuğuma nasıl ekleyebilirim? eklenecek bir yol var mı?
XaBerr

2
Choco ile kurduysanız, bu satırı (değişken tırnak işaretleri) "C: \ tools \ cygwin \ bin" sistem değişkenlerindeki yol değişkeninize ekleyin
Ali.Ghodrat

40

Check out GnuWin 'ın marka (Cygwin gibi tam bir çalışma zamanı ortamı gerektirmeden) Windows için yerli bağlantı noktası sağlar,


8
Ayrıca, lütfen sistem PATH'ınıza "C: \ Program Files (x86) \ GnuWin32 \ bin" ekleyin.
ccy

29

İşte bir Makefile çalıştırmanın hızlı ve geçici yolu

  • indir marka SourceForge: GnuWin32
  • yükle
  • yükleme klasörüne git

C: \ Program Dosyaları (x86) \ GnuWin32 \ bin

  • kopyalamak tüm dosyaları için çöpe Makefile'ı içeren klasör

libiconv2.dll libintl3.dll make.exe

  • cmd'yi açın ( vardiya ile sağ tıklama ile yapabilirsiniz ) Makefile'a ve koşmak içeren klasörde

make.exe

yapılır.

Ayrıca, komuttan sonra aşağıdaki gibi bağımsız değişkenler ekleyebilirsiniz:

make.exe skel


11
Ortam değişkenine bindizin eklemek daha iyidir PATH. Bu make.exeher yerden kullanılabilir.
Yukulélé

1
Bence varsayılan olarak yapılır - en azından gnuwin32 yüklediğimde böyle oldu. Tabii ki dosyaları kopyalamak kötü bir uygulamadır.
JFFIGK

1
Varsayılan olarak yapılmaz (veya benim durumumda değil). Yolu ekleyerek , proje klasöründen make komutunu çalıştırabilirsiniz .
Victor

Bir şampiyon gibi çalış
trungducng

28

Bu soru eski bir soru olabilir, ancak benim deresay herhangi bir windows kullanıcısı için en basit olan benim çözümüm listede yok.

Adım 1: WINDOWS (Windows 7+ / Windows Server 2003+ ile uyumlu) için chocolatey paket yöneticisini buraya yükleyin

2.Adım: Çalıştırınchoco install make

Adım 3: Bakımlı bir paket yöneticisinden kar edin. Marka genel yola eklenmiş ve tüm CLI'lerde (powershell, git bash, cmd…) çalışır

Ben choco ile bağlı değilim ama SADECE İYİ.


8

Cygwin yüklerseniz . Yükleyicide make'i seçtiğinizden emin olun. Daha sonra bir Makefile'niz varsa aşağıdaki komutu çalıştırabilirsiniz.

make -f Makefile

https://cygwin.com/install.html

6

Visual Studio 2017 ile bu klasörü Windows 10 yol env değişkenime eklemek zorunda kaldım:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.10.25017\bin\HostX64\x64

Ayrıca HostX86 da var


3

İlk olarak, c:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Toolssistem yoluna visual studio ortak araçlarının ( ) yolunu ekleyin . Sistem yoluna nasıl yol ekleneceğini öğrenmek için lütfen bu web sitesini kontrol edin: http://www.computerhope.com/issues/ch000549.htm . Buna sadece bir kez ihtiyacın var.

Bundan sonra, ihtiyacınız olduğunda, bir komut satırı açın ve vsvars32.batgerekli tüm görsel stüdyo araçlarının yollarını sistem yoluna eklemek için yürütün .

Ardından, nmake -f makefile.mak

Not: Visual studio ortak araçlarının yolu sisteminizde farklı olabilir. Lütfen buna göre değiştirin.


3

Bir "NMake Makefile" ise, yani sözdizimi ve komut NMake ile uyumluysa, Windows'ta yerel olarak çalışacaktır. Genellikle Makefile.win( .winsonek) bunun Windows NMake ile uyumlu bir marka olduğunu gösterir. Yani deneyebilirsinnmake -f Makefile.win .

Genellikle standart Linux Makefiles sağlanır ve NMakeumut verici görünür. Ancak, aşağıdaki bağlantı basit bir Linux Makefile alır ve karşılaşabileceğiniz bazı temel sorunları açıklar. Ayrıca Windows'ta Linux Makefiles'i işlemek için birkaç alternatif önerir.

Windows'da Makefiles


1

Cygwin & gnuwin ile denedim ve benim için çalışmadı, sanırım makefile özellikle belirli linux kodunu kullandı.

Çalıştığı şey , Windows 10 için Ubuntu Bash kullanmaktı . Benim durumum olduğu gibi MAC'den gelirseniz bu bir Marvel:

  1. Ubuntu Bash'i kurmak için: https://itsfoss.com/install-bash-on-windows/
  2. Konsola girdikten sonra yüklemek için "make" yazmanız yeterlidir ve indirme talimatlarını verir.

Ekstralar:

  1. Faydalı kopyala / yapıştır özelliğini etkinleştir: Windows'ta Ubuntu'da Bash'e Kopyala Yapıştır
  2. Benim durumumda Maven adlı marka, bu yüzden de kurmam gerekiyor: /ubuntu/722993/unable-to-locate-package-maven
  3. Windows dosya sistemi C: sürücüsüne erişmek için, örneğin: "cd / mnt / c /"

Umarım yardımcı olur


0

Ben sistem değişkeniniz varsa , yapı aracı sağlayan MinGW araç seti kullanın , Windows Komut İstemi'nde sadece dosyaları içeren dizine gidin ve bu komutu yazın:mingw32-makePATH

mingw32-make -f Makefile.win

ve bitti.


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.