โฮมเพจ » ทำอย่างไร » วิธีคอมไพล์และติดตั้งจากซอร์สบน Ubuntu

    วิธีคอมไพล์และติดตั้งจากซอร์สบน Ubuntu

    Ubuntu และ Linux ดิสทริบิวชันอื่น ๆ มีที่เก็บแพกเกจมากมายเพื่อช่วยคุณในการรวบรวมปัญหาต่าง ๆ ด้วยตัวคุณเอง ถึงกระนั้นบางครั้งคุณจะพบแอปพลิเคชั่นที่ไม่ชัดเจนหรือแอปพลิเคชั่นเวอร์ชันใหม่ที่คุณต้องรวบรวมจากแหล่งที่มา.

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

    การติดตั้งซอฟต์แวร์ที่จำเป็น

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

    sudo apt-get install build-essential

    พิมพ์ Y และกด Enter เพื่อยืนยันการติดตั้งเมื่อพร้อมต์.

    รับแพ็คเกจต้นทาง

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

    ตัวอย่างเช่นลองรวบรวม Pidgin จากแหล่งที่มา - อาจจะมีเวอร์ชั่นใหม่ที่ยังไม่ได้บรรจุและเราต้องการตอนนี้ ค้นหาไฟล์. tar.gz หรือ. tar.bz2 ของโปรแกรมแล้วบันทึกลงในคอมพิวเตอร์ของคุณ.

    A. tar.gz หรือ. tar.bz2 เป็นเหมือนไฟล์. zip ในการใช้งานเราจะต้องแยกเนื้อหาออก.

    ใช้คำสั่งนี้เพื่อแยกไฟล์. tar.gz:

    tar -xzvf file.tar.gz

    หรือใช้คำสั่งนี้เพื่อแยกไฟล์. tar.bz2:

    tar -xjvf file.tar.bz2

    คุณจะได้ไดเรกทอรีที่มีชื่อเดียวกันกับแพ็คเกจซอร์สโค้ดของคุณ ใช้คำสั่ง cd เพื่อป้อน.

    การพึ่งพาการแก้ไข

    เมื่อคุณอยู่ในไดเรกทอรีที่แยกแล้วให้เรียกใช้คำสั่งต่อไปนี้:

    ./ กำหนดค่า

    (โปรดทราบว่าบางแอปพลิเคชั่นอาจไม่ใช้. / กำหนดค่าตรวจสอบไฟล์“ README” หรือ“ INSTALL” ในโฟลเดอร์ที่แตกของแอปพลิเคชันเพื่อดูคำแนะนำเพิ่มเติม)

    (ส่วน. / บอกให้ Bash เชลล์ดูในไดเรกทอรีปัจจุบันสำหรับไฟล์ "configure" และเรียกใช้หากคุณไม่ระบุ. / Bash จะค้นหาโปรแกรมชื่อ "configure" ในไดเรกทอรีระบบเช่น / bin และ / usr / bin.)

    คำสั่ง. / config ตรวจสอบระบบของคุณเพื่อหาซอฟต์แวร์ที่จำเป็นสำหรับการสร้างโปรแกรม.

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

    sudo apt-get install intltool

    หลังจากติดตั้งซอฟต์แวร์ที่จำเป็นแล้วให้รันคำสั่ง. / config อีกครั้ง หากคุณต้องการติดตั้งซอฟต์แวร์เพิ่มเติมให้ทำขั้นตอนนี้ซ้ำกับ sudo apt-get install คำสั่งจนกระทั่ง. / config เสร็จสมบูรณ์ ไม่ใช่ทุกแพ็คเกจที่ต้องการจะมีชื่อที่แน่นอนที่คุณเห็นในข้อความแสดงข้อผิดพลาด - คุณอาจต้องให้ Google แจ้งข้อผิดพลาดเพื่อพิจารณาแพ็คเกจที่ต้องการ.

    หากโปรแกรมรุ่นเก่าที่คุณกำลังพยายามรวบรวมอยู่ในคลังซอฟต์แวร์ของอูบุนตูอยู่แล้วคุณสามารถโกงด้วย sudo apt-get build-dep คำสั่ง ตัวอย่างเช่นถ้าฉันวิ่ง sudo apt-get build-dep pidgin, apt-get จะดาวน์โหลดและติดตั้งการพึ่งพาทั้งหมดที่ฉันจะต้องรวบรวม Pidgin โดยอัตโนมัติ อย่างที่คุณเห็นแพคเกจมากมายที่คุณต้องใช้ -dev.

    เมื่อ. / คอนฟิกเสร็จสมบูรณ์คุณก็พร้อมที่จะรวบรวมและติดตั้งแพ็คเกจ.

    รวบรวมและติดตั้ง

    ใช้คำสั่งต่อไปนี้เพื่อรวบรวมโปรแกรม:

    ทำ

    กระบวนการนี้อาจใช้เวลาสักครู่ขึ้นอยู่กับระบบและขนาดของโปรแกรม หากการกำหนดค่าเสร็จสมบูรณ์แล้วให้ทำไม่ได้มีปัญหาใด ๆ คุณจะเห็นบรรทัดของการเลื่อนข้อความตามที่โปรแกรมรวบรวม.

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

    sudo ทำการติดตั้ง

    มันอาจจะถูกเก็บไว้ภายใต้ / usr / local บนระบบของคุณ / usr / local / bin เป็นส่วนหนึ่งของเส้นทางของระบบของคุณซึ่งหมายความว่าเราสามารถพิมพ์“ภาษาอังกฤษของจีนบ๋อยฝรั่ง” เข้าสู่เทอร์มินัลเพื่อเปิด Pidgin โดยไม่ต้องยุ่งยาก.

    อย่าลบไดเรกทอรีของโปรแกรมหากคุณต้องการติดตั้งในภายหลัง - คุณสามารถเรียกใช้คำสั่งต่อไปนี้จากไดเรกทอรีเพื่อถอนการติดตั้งโปรแกรมจากระบบของคุณ:

    sudo ทำการถอนการติดตั้ง


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

    มีเทคนิคขั้นสูงมากมายที่เรายังไม่ได้กล่าวถึง แต่หวังว่ากระบวนการรวบรวมซอฟต์แวร์ Linux ของคุณจะไม่น่ากลัวอีกต่อไป.