วิธีแก้ไขข้อผิดพลาด “make: command not found” ใน Ubuntu

เผยแพร่แล้ว: 2023-05-10
Das Keyboard 6 ภาพระยะใกล้ของปุ่มกดเรืองแสงแบบมืออาชีพ
Napier Lopez / How-To Geek
ในการแก้ไขข้อผิดพลาด "make: command not found" บน Ubuntu Linux คุณจะต้องติดตั้ง make หากต้องการติดตั้ง make ให้เรียกใช้คำสั่ง "sudo apt install make" หรือติดตั้งเครื่องมือการพัฒนามาตรฐานพร้อมกัน ให้ใช้คำสั่ง "sudo apt install build-essential"

การติดตั้งมาตรฐานของ Ubuntu ไม่รวมยูทิลิตี make ของ Linux ส่วนใหญ่จะใช้โดยนักพัฒนาซอฟต์แวร์ แต่แม้แต่ผู้ที่ไม่ใช่ผู้เขียนโค้ดก็อาจต้องการใช้ในบางสถานการณ์ นี่คือวิธีการติดตั้ง make บน Ubuntu Linux

สารบัญ

อะไร "ทำให้: ไม่พบคำสั่ง" หมายถึงอะไร
วิธีแก้ไข "ไม่พบคำสั่ง make:" บน Ubuntu
ยูทิลิตี้ make คืออะไร?
ฉันไม่ใช่โปรแกรมเมอร์ ทำไมฉันถึงต้องแคร์?
วิธีการติดตั้ง make With apt
จะเกิดอะไรขึ้นถ้า Bash ยังหายี่ห้อไม่ได้?
หากคุณสามารถทำได้ที่นี่

อะไร "ทำให้: ไม่พบคำสั่ง" หมายถึงอะไร

หากคุณเห็นข้อผิดพลาด “make: command not found” บน Ubuntu (หรือ Linux รุ่นอื่น) นั่นหมายความว่าคำสั่ง make นั้นยังไม่ได้ติดตั้งบนระบบของคุณ เป็นเรื่องปกติ—Ubuntu จะไม่ติดตั้งคำสั่ง make ตามค่าเริ่มต้น

ยูทิลิตี make มักใช้เมื่อคอมไพล์ซอฟต์แวร์จากซอร์สโค้ดบน Linux ไม่ว่าคุณกำลังพยายามเรียกใช้คำสั่ง make โดยตรงด้วยตัวคุณเองหรือคุณกำลังใช้ซอฟต์แวร์ที่เรียกใช้ make ในเบื้องหลัง คุณจะเห็นข้อผิดพลาด “make: command not found” ที่ระบุว่ายังไม่ได้ติดตั้ง

หากต้องการแก้ไขข้อผิดพลาด “make: command not found” คุณต้องติดตั้ง make คุณสามารถทำได้ด้วย apt ตัวจัดการแพ็คเกจมาตรฐานของ Ubuntu

วิธีแก้ไข make: command not found บน Ubuntu

ในการแก้ไข “make: command not found” บน Ubuntu คุณจะต้องติดตั้งยูทิลิตี้ make

หากต้องการติดตั้งเฉพาะยูทิลิตี้ make ให้รันคำสั่งต่อไปนี้ใน Terminal:

 sudo apt ติดตั้ง 

การติดตั้ง make ด้วยคำสั่ง apt

เราขอแนะนำให้ติดตั้งแพ็คเกจที่จำเป็นต่อการสร้าง ซึ่งรวมถึงแพ็คเกจ make และแพ็คเกจที่สำคัญอื่น ๆ สำหรับการสร้างซอฟต์แวร์ เรียกใช้คำสั่งต่อไปนี้ในเทอร์มินัลเพื่อติดตั้ง:

 sudo apt ติดตั้ง build-essential 

การติดตั้งแพ็คเกจ build-essential ด้วยคำสั่ง apt

หลังจากติดตั้ง make คุณจะไม่เห็นข้อผิดพลาด “make: command not found” อีกต่อไป คุณสามารถเรียกใช้คำสั่ง make ได้โดยตรงจากบรรทัดคำสั่งหรือเรียกใช้สคริปต์การติดตั้งที่ขึ้นอยู่กับ make อีกครั้งเพื่อดำเนินการต่อ

ยูทิลิตี้ make คืออะไร?

เครื่องมือ make เป็นยูทิลิตี้บรรทัดคำสั่งที่ช่วยในการสร้างโครงการซอฟต์แวร์ เพื่อชื่นชมประโยชน์ของมัน คุณต้องเข้าใจว่าปกติแล้วซอฟต์แวร์ถูกพัฒนาอย่างไร เมื่อโปรแกรมเมอร์เขียนโค้ด พวกเขาพิมพ์คำสั่งโปรแกรมลงในเอดิเตอร์หรือสภาพแวดล้อมการพัฒนาแบบบูรณาการ ต้องมีบางอย่างเกิดขึ้นเพื่อแปลงไฟล์ข้อความเป็นไบนารีที่เรียกใช้งานได้ ขั้นตอนนั้นเรียกว่าการคอมไพล์ และต้องใช้โปรแกรมที่เรียกว่า คอมไพเลอร์

คอมไพเลอร์จะอ่านไฟล์ซอร์สโค้ด และแปลเป็นคำสั่งระดับล่างที่ CPU สามารถเข้าใจได้ มันสร้างไฟล์ไบนารีที่มีคำแนะนำเหล่านั้นทั้งหมด เป็นไฟล์ไบนารีที่ถูกเรียกใช้และดำเนินการเมื่อคุณพยายามเรียกใช้โปรแกรมของคุณ

คอมไพเลอร์เป็นซอฟต์แวร์ที่ซับซ้อน พวกเขามีตัวเลือกบรรทัดคำสั่งมากมายที่สามารถเรียกใช้ได้ สำหรับแต่ละไฟล์ที่พวกเขาจำเป็นต้องคอมไพล์ และโครงการพัฒนาที่ซับซ้อนสามารถมีไฟล์ซอร์สโค้ดที่แตกต่างกันได้หลายร้อยไฟล์ นั่นเป็นการตั้งค่ามากมายที่ต้องติดตาม ปัญหาอีกอย่างคือคุณไม่ต้องการคอมไพล์ไฟล์ที่ไม่มีการเปลี่ยนแปลงตั้งแต่คอมไพล์ครั้งล่าสุด นั่นเสียเวลา

makefile เป็นไฟล์ข้อความธรรมดาที่เก็บการตั้งค่าและกฎทั้งหมดที่จำเป็นสำหรับโครงการพัฒนาที่จะสร้างขึ้นในไฟล์ไบนารีที่เรียกใช้งานได้ นอกจากนี้ยังหลีกเลี่ยงการคอมไพล์ไฟล์ใหม่ที่ไม่มีการเปลี่ยนแปลงตั้งแต่การคอมไพล์ครั้งก่อน make โปรแกรมที่อ่าน makefile และประสานงานการสร้างโครงการ

การคอมไพล์ใหม่และการสร้างโครงการที่มีการควบคุมสามารถดำเนินการได้โดยใช้คำสั่งเดียว: make สภาพแวดล้อมการพัฒนาแบบบูรณาการบางแห่งใช้ makefiles ที่สร้างขึ้นโดยอัตโนมัติและดำเนินการขั้นตอนการคอมไพล์โดยการเรียกใช้ make ในเบื้องหลัง

ฉันไม่ใช่โปรแกรมเมอร์ ทำไมฉันถึงต้องแคร์?

ฐานผู้ใช้หลักอาจเป็นโปรแกรมเมอร์ แต่ก็ยังมีเหตุผลที่คุณอาจต้อง make ติดตั้งบนคอมพิวเตอร์ของคุณ แม้ว่าคุณจะไม่เคยเขียนโค้ดสักบรรทัดก็ตาม

วิธีการติดตั้งซอฟต์แวร์โดยใช้ Git บน Linux
ที่เกี่ยวข้อง วิธีการติดตั้งซอฟต์แวร์โดยใช้ Git บน Linux

แพ็คเกจซอฟต์แวร์บางอย่างไม่รวมอยู่ในไฟล์การติดตั้ง ในการรับเวอร์ชันที่ใช้งานได้ของโปรแกรม คุณต้องดาวน์โหลดไฟล์เก็บถาวรที่มีซอร์สโค้ดทั้งหมด หรือคุณต้องโคลนที่เก็บ Git ของโปรแกรมเพื่อรับซอร์สโค้ด จากนั้นเรียกใช้ make

หากคุณใช้ VirtualBox เพื่อรันลีนุกซ์รุ่นอื่นๆ เป็นเครื่องเสมือน คุณจะรู้ว่าเพื่อประสบการณ์ที่ดีที่สุด คุณต้องติดตั้ง VirtualBox Guest Additions ภายในระบบปฏิบัติการเกสต์ ในการดำเนินการนี้ จะต้องสร้างโมดูลเคอร์เนล VirtualBox Guest Additions และเพื่อให้บรรลุผลดังกล่าว จะต้อง make โมดูลบนระบบปฏิบัติการแขก

วิธีการติดตั้ง make With apt

หากคุณกำลังทำงานกับการติดตั้ง Ubuntu ใหม่ จะไม่มี make ติดตั้ง หากคุณกำลังดูแลระบบคอมพิวเตอร์ให้ผู้อื่น คุณควรตรวจสอบเพื่อดูว่ามีการติดตั้ง make ไว้แล้วหรือไม่

พิมพ์คำสั่ง make แล้วกด “Enter”

 ทำ 

เรียกใช้คำสั่ง make เพื่อดูว่าเราได้รับการตอบสนองอะไร

หากคุณเห็นข้อความจาก make บ่นว่าคุณไม่ได้ให้คำสั่งเฉพาะและไม่พบ makefile แสดงว่า make ได้รับการติดตั้งและใช้งานได้ คุณสามารถใช้คำสั่ง whereis เพื่อดูว่าหน้า make binary และ man อยู่ที่ใด

 ทำที่ไหน 

ใช้คำสั่ง whereis เพื่อค้นหา make

หากคุณเห็นข้อความจาก Bash แจ้งว่าไม่พบคำสั่ง make แสดงว่าไม่ได้ติดตั้ง make

การลองใช้คำสั่ง make โดยไม่ติดตั้งจะทำให้เกิดข้อผิดพลาดพร้อมคำแนะนำ

หากคุณไม่ได้ใช้การอัปเดตใดๆ สักระยะหนึ่ง คุณควรรันคำสั่ง apt พร้อมตัวเลือก update ก่อน

 อัปเดต sudo apt 

ใช้การอัพเดตด้วยคำสั่ง apt

เราสามารถติดตั้ง make ได้ง่ายๆ ด้วยคำสั่งนี้

 sudo apt ติดตั้ง 

การติดตั้ง make ด้วยคำสั่ง apt

อย่างไรก็ตาม หากไม่มีชุดเครื่องมือการพัฒนาเริ่มต้น make ไม่มีประโยชน์มากนัก ดังนั้นคุณก็สามารถติดตั้งได้ สิ่งเหล่านี้รวมอยู่ในแพ็คเกจเดียวที่เรียกว่า "build-essential" การติดตั้งแพ็คเกจนั้นจะติดตั้งเครื่องมือเช่น gcc และ g++ และยังติดตั้ง make

ฉันมักจะข้ามขั้นตอนของการติด make ด้วยตัวเอง และไปที่การติดตั้งแพ็คเกจ “build-essential” โดยตรง มันฆ่านกสองตัวด้วยหินก้อนเดียว

ติดตั้งแพ็คเกจ "build-essential" ด้วยคำสั่งนี้

 sudo apt ติดตั้ง build-essential 

การติดตั้งแพ็คเกจ build-essential ด้วยคำสั่ง apt

มีเครื่องมือมากมายใน "build-essential" และใช้เวลาไม่กี่นาทีในการติดตั้งทั้งหมด มันคุ้มค่ากับการรอเพียงเล็กน้อย เพราะพวกเขาจะทำให้คุณได้รับตำแหน่งที่ดี คุณควรจะสามารถรับมือกับการสร้างซอฟต์แวร์ทุกประเภทได้ในขณะนี้

ที่เกี่ยวข้อง: apt vs. apt-get: อะไรคือความแตกต่างบน Linux?

จะเกิดอะไรขึ้นถ้า Bash ยังหายี่ห้อไม่ได้?

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

 sudo apt install -- ติดตั้งใหม่ 

ติดตั้งใหม่อีกครั้งด้วยคำสั่ง apt

หากไม่ได้ผล คุณสามารถใช้คำสั่ง find เพื่อพยายามระบุตำแหน่ง make binary จากนั้นเราสามารถตรวจสอบให้แน่ใจว่าอยู่ในไดเร็กทอรีที่อยู่ในตัวแปรสภาพแวดล้อม $PATH

คำสั่งนี้จะค้นหาระบบไฟล์ของคุณจากไดเร็กทอรีราก โดยมองหาไฟล์ชื่อ “make” มันไพพ์เอาต์พุตเป็น less .

 ค้นหา / -พิมพ์ f -name "ทำ" | น้อย 

ค้นหา make binary และ man page ด้วยคำสั่ง find

เมื่อการค้นหาเสร็จ less ให้ค้นหาคำว่า "make" โดยกดเครื่องหมายทับ " / " พิมพ์ "make" แล้วกด "Enter" คุณจะเห็นทุกบรรทัดที่มีคำว่า “ทำ”

ผลการค้นหา "ทำ" ในน้อย

อย่างที่คุณเห็น คำสั่ง find ได้พบไฟล์สามไฟล์ที่ Bash ใช้เป็นส่วนหนึ่งของการกรอกบรรทัดคำสั่ง “Tab” และไบนารีที่เรียกใช้งานได้ แต่มีบางอย่างผิดพลาดอย่างมากกับการติดตั้งนี้ และไบนารี make ถูกวางไว้ในไดเร็กทอรี “/etc/”

เราจะย้ายไปยังตำแหน่งที่ควรจะเป็น และ make ควรเริ่มทำงาน

 sudo mv /etc/make /usr/bin 

การย้ายไฟล์ make ไปยังไดเร็กทอรีที่ถูกต้อง

ตอนนี้ถ้าเราพยายามใช้คำสั่ง make ข้อความใดๆ ที่เราได้รับควรมาจาก make ไม่ใช่จาก Bash

 ทำ 

การตอบสนองเริ่มต้นจาก make

เยี่ยม เราต้องทำงานในคอมพิวเตอร์เครื่องนี้แล้ว คุณจะไม่เห็นข้อผิดพลาด “make: command not found” อีกต่อไป

หากคุณสามารถทำได้ที่นี่

คุณสามารถทำมันได้ทุกที่

เทคนิคเหล่านี้ควรใช้กับการแจกแจงแบบอื่นด้วย คุณเพียงแค่ต้องแทนที่คำสั่งการติดตั้งสำหรับคำสั่งที่ใช้ในการแจกจ่ายของคุณเอง

บน Fedora คุณสามารถใช้คำสั่งนี้เพื่อติดตั้งเครื่องมือสร้างพร้อมกับ make .

 sudo dnf groupinstall "เครื่องมือสำหรับการพัฒนา" "ไลบรารีสำหรับการพัฒนา"

บน Manjaro ให้ใช้คำสั่งนี้

 sudo pacman -S ฐานพัฒนา

ที่เกี่ยวข้อง: วิธีติดตั้งซอฟต์แวร์ Linux ใน Ubuntu Bash Shell ของ Windows 10