วิธีเรียกใช้ makefile ใน Windows


187

ฉันมีการสาธิตบางอย่างที่ฉันดาวน์โหลดและมาพร้อมกับ Makefile.win และ Makefile.sgi ฉันจะเรียกใช้สิ่งเหล่านี้ใน Windows เพื่อรวบรวมการสาธิตได้อย่างไร


1
ฉันควรจะพูดถึงว่าฉันเป็นคนลินุกซ์มากขึ้น แต่ฉันต้องใช้ Windows ในตอนนี้ดังนั้นฉันจึงไม่รู้เรื่องเลย
Kim

1
คู่มือที่ชัดเจนมากได้รับที่นี่
Sherzod

คำตอบ:


114

หากคุณมี Visual Studio ให้เรียกใช้พรอมต์คำสั่ง Visual Studio จากเมนูเริ่มเปลี่ยนเป็นไดเรกทอรีที่มีMakefile.winและพิมพ์สิ่งนี้:

nmake -f Makefile.win

คุณยังสามารถใช้พรอมต์คำสั่งปกติและเรียกใช้ vsvars32.bat (c: \ Program Files (x86) \ Microsoft Visual Studio 9.0 \ Common7 \ Tools สำหรับ VS2008 Visual Studio สิ่งนี้จะตั้งค่าสภาพแวดล้อมในการรัน nmake และค้นหาเครื่องมือคอมไพเลอร์


5
ฉันจะรันพรอมต์คำสั่ง visual studio จากเมนูเริ่มต้นได้อย่างไร
Kim

เอาล่ะฉันคิดออก แต่แน่นอนว่ามันจะไม่รวบรวมเพราะข้อผิดพลาด แค่โชคของฉัน ขอบคุณแม้ว่า
Kim

9
สำหรับผู้ที่มี VS2012 พรอมต์คำสั่งจะเรียกว่า "Developer Command Prompt สำหรับ VS2012" เริ่ม -> ค้นหา -> "คำสั่ง" เป็นวิธีที่ฉันพบ
undeniablyrob

@NSD: คุณสามารถลอง "ทำ" อื่น ๆ ได้ แต่โดยปกติไฟล์ดังกล่าวจะเขียนกับภาษาถิ่นของ nmake และด้วยสมมติฐานว่าติดตั้ง VS และบนเส้นทางแล้ว คุณอาจพบว่าเพียงพอVS Expressฟรี
Marcelo Cantos

@MarceloCantos ฉันเป็น noob สำหรับ Linux และการสร้าง ถ้าฉันมีไฟล์. am และ. mk ฉันไม่มีไฟล์. win ใด ๆ ฉันพยายามที่จะทำให้ wget
Cheeku

53

ตรวจสอบcygwinสภาพแวดล้อม Unix ที่เหมือนกันสำหรับ Windows


6
cygwin ทำงานได้ดีสำหรับฉัน! ฉันเพิ่งมีการตรวจสอบระหว่างการติดตั้งแพคเกจบางอย่างในDevel: 'ทำให้' และ 'gcc' ตามที่อธิบายไว้ที่นี่
Damien Leroux

6
ฉันยังแนะนำให้ติดตั้ง cygwin โดยใช้ chocolatey ดังนั้นคำสั่งที่จะได้รับmakeคือ:choco install make --source=cygwin
zygimantus

หลังจากฉันติดตั้งด้วย choco ฉันจะเพิ่มลงในเชลล์คำสั่งของฉันได้อย่างไร มีเส้นทางที่จะเพิ่มหรือไม่?
XaBerr

2
ในกรณีที่คุณติดตั้งด้วย choco ให้เพิ่มบรรทัดนี้ (เครื่องหมายคำพูดที่ต้องการ) ลงในตัวแปรพา ธ ของคุณในตัวแปรระบบ "C: \ tools \ cygwin \ bin"
Ali.Ghodrat

40

ตรวจสอบGnuWin 's แต่งหน้าซึ่งมีพอร์ตพื้นเมืองสำหรับ Windows (โดยไม่ต้องมีสภาพแวดล้อมรันไทม์เต็มรูปแบบเช่น Cygwin)


8
นอกจากนี้โปรดเพิ่ม "C: \ Program Files (x86) \ GnuWin32 \ bin" ใน PATH ของระบบ
ccy

29

นี่เป็นวิธีที่รวดเร็วและชั่วคราวในการเรียกใช้ Makefile

  • ดาวน์โหลดmakeจาก SourceForge: gnuwin32
  • ติดตั้ง
  • ไปที่โฟลเดอร์การติดตั้ง

C: \ Program Files (x86) \ GnuWin32 \ bin

  • คัดลอกไฟล์ทั้งหมดในถังขยะไปยังโฟลเดอร์ที่มี Makefile

เครื่องมือซ่อมแซม libiconv2.dll

  • เปิด cmd (คุณสามารถทำได้ด้วยการคลิกขวาด้วย shift )ในโฟลเดอร์ที่มี Makefile และเรียกใช้

make.exe

เสร็จแล้ว

นอกจากนี้คุณสามารถเพิ่มอาร์กิวเมนต์หลังจากคำสั่งเช่น

โครงร่าง make.exe


11
อาจเป็นการดีกว่าถ้าคุณเพิ่มbinไดเรกทอรีลงในPATHตัวแปรสภาพแวดล้อม สิ่งนี้จะให้make.exeบริการได้จากทุกที่
Yukulélé

1
ฉันคิดว่ามันทำโดยปริยาย - อย่างน้อยก็เป็นอย่างนั้นเมื่อฉันติดตั้ง gnuwin32 แน่นอนการคัดลอกไฟล์เป็นการฝึกที่ไม่ดีอยู่ดี
JFFIGK

1
มันไม่ได้ทำตามค่าเริ่มต้น (หรือไม่ในกรณีของฉัน) โดยการเพิ่มเข้าไปในเส้นทางจากนั้นคุณสามารถเรียกใช้makeจากโฟลเดอร์โครงการ
Victor

ทำงานเหมือนแชมป์
trungducng

28

คำถามนี้อาจเป็นคำถามเก่า แต่โซลูชันของฉันซึ่งเป็นวิธีที่ง่ายที่สุดสำหรับผู้ใช้ windows ที่ฉันไม่ทราบ

ขั้นตอนที่ 1:ติดตั้งตัวจัดการแพ็คเกจช็อกโกแลตสำหรับWINDOWS (เข้ากันได้กับ Windows 7+ / Windows Server 2003+) ที่นี่

ขั้นตอนที่ 2:เรียกใช้choco install make

ขั้นตอนที่ 3:กำไรจากผู้จัดการแพ็คเกจที่บำรุงรักษาอย่างดี Make จะถูกเพิ่มไปยังเส้นทางทั่วโลกและทำงานบน CLIs ทั้งหมด (powershell, git bash, cmd …)

ฉันไม่ได้มีส่วนเกี่ยวข้องกับ choco แต่เป็นสิ่งที่ดี


8

หากคุณติดตั้งCygwin ตรวจสอบให้แน่ใจว่าได้เลือก make ในตัวติดตั้ง จากนั้นคุณสามารถเรียกใช้คำสั่งต่อไปนี้หากคุณมี Makefile

make -f Makefile

https://cygwin.com/install.html

6

ด้วย Visual Studio 2017 ฉันต้องเพิ่มโฟลเดอร์นี้ในตัวแปร env path ของ Windows 10:

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

นอกจากนี้ยังมี HostX86


3

ประการแรกเพิ่มเส้นทางของเครื่องมือทั่วไป visual Studio ( c:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools) ลงในเส้นทางของระบบ หากต้องการเรียนรู้วิธีเพิ่มเส้นทางลงในเส้นทางของระบบโปรดตรวจสอบเว็บไซต์นี้: http://www.computerhope.com/issues/ch000549.htm http://www.computerhope.com/issues/ch000549.htmคุณเพียงแค่ต้องทำสิ่งนี้ครั้งเดียว

หลังจากนั้นเมื่อใดก็ตามที่คุณต้องการให้เปิดบรรทัดคำสั่งและดำเนินการvsvars32.batเพื่อเพิ่มเส้นทางเครื่องมือของ Visual Studio ที่จำเป็นทั้งหมดในเส้นทางของระบบ

จากนั้นคุณสามารถโทร nmake -f makefile.mak

PS: เครื่องมือทั่วไปของ Visual Studio อาจแตกต่างกันในระบบของคุณ กรุณาเปลี่ยนตามความเหมาะสม


3

หากเป็น "NMake Makefile" นั่นคือการพูดว่าไวยากรณ์และคำสั่งเข้ากันได้กับ NMake มันจะทำงานบน Windows โดยปกติMakefile.win( .winส่วนต่อท้าย) ระบุว่าเป็น makefile ที่เข้ากันได้กับ Windows NMake ดังนั้นคุณสามารถลองnmake -f Makefile.winดังนั้นคุณอาจจะลอง

บ่อยครั้งที่ Makefiles Linux มาตรฐานมีให้และNMakeดูมีแนวโน้ม อย่างไรก็ตามลิงค์ต่อไปนี้ใช้ Linux Makefile อย่างง่ายและอธิบายปัญหาพื้นฐานบางอย่างที่อาจเกิดขึ้น นอกจากนี้ยังแนะนำทางเลือกเล็กน้อยในการจัดการ Linux Makefiles บน Windows

สร้างไฟล์ใน Windows


1

ฉันลองกับ cygwin & gnuwin และไม่ได้ผลสำหรับฉันฉันเดาเพราะ makefile ใช้รหัสลินุกซ์ที่เฉพาะเจาะจงเป็นหลัก

สิ่งที่จะได้ทำงานเป็นใช้อูบุนตูทุบตีสำหรับ Windows 10 นี่คือ Marvel ถ้าคุณมาจาก MAC เพราะเป็นกรณีของฉัน:

  1. วิธีติดตั้ง Ubuntu Bash: https://itsfoss.com/install-bash-on-windows/
  2. เมื่ออยู่ในคอนโซลการติดตั้ง make ก็แค่พิมพ์ "make" และให้คำแนะนำในการดาวน์โหลด

พิเศษ:

  1. เปิดใช้งานการคัดลอก / วางบน bash ที่มีประโยชน์: Copy Paste in Bash บน Ubuntu บน Windows
  2. ในกรณีของฉันชื่อที่เรียกว่า Maven ดังนั้นฉันต้องติดตั้งเช่นกัน: /ubuntu/722993/unable-to-locate-package-maven
  3. ในการเข้าถึงไดรฟ์ windows filesystem C: ตัวอย่างเช่น: "cd / mnt / c /"

หวังว่ามันจะช่วย


0

ฉันใช้ชุดเครื่องมือMinGWซึ่งมีmingw32-makeเครื่องมือสร้างหากคุณมีในPATHตัวแปรระบบของคุณใน Windows Command Prompt เพียงเข้าไปในไดเรกทอรีที่มีไฟล์และพิมพ์คำสั่งนี้:

mingw32-make -f Makefile.win

และมันก็ทำ


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.