Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

การติดตั้ง

ขั้นตอนแรกคือการติดตั้ง Rust เราจะดาวน์โหลด Rust ผ่าน rustup ซึ่งเป็นเครื่องมือบรรทัดคำสั่ง (command line tool) สำหรับจัดการเวอร์ชันของ Rust และเครื่องมือที่เกี่ยวข้อง คุณจำเป็นต้องเชื่อมต่ออินเทอร์เน็ตในการดาวน์โหลด

หมายเหตุ: หากคุณมีเหตุผลที่ไม่ต้องการใช้งาน rustup สามารถศึกษารายละเอียดทางเลือกอื่นๆ เพิ่มเติมได้ที่ หน้าวิธีการติดตั้ง Rust อื่นๆ

ขั้นตอนต่อไปนี้จะทำการติดตั้งคอมไพเลอร์ Rust เวอร์ชันเสถียร (stable) ล่าสุด การรับประกันความเสถียรของ Rust ช่วยให้มั่นใจได้ว่าโค้ดตัวอย่างทั้งหมดในหนังสือเล่มนี้ที่สามารถคอมไพล์ได้ จะยังคงสามารถคอมไพล์ได้ด้วย Rust เวอร์ชันที่ใหม่กว่า ผลลัพธ์จากการรันคำสั่ง (output) อาจแตกต่างกันไปเล็กน้อยในแต่ละเวอร์ชัน เนื่องจาก Rust มักมีการพัฒนาข้อความแสดงข้อผิดพลาดและคำเตือนให้ดีขึ้น กล่าวอีกนัยหนึ่งคือ Rust เวอร์ชันเสถียรเวอร์ชันใหม่ใดๆ ที่คุณติดตั้งผ่านขั้นตอนเหล่านี้จะทำงานได้อย่างถูกต้องกับเนื้อหาในหนังสือเล่มนี้อย่างแน่นอน

เครื่องหมายที่ใช้ในบรรทัดคำสั่ง

ในบทนี้และบทต่อๆ ไปในหนังสือเล่มนี้ เราจะแสดงคำสั่งบางส่วนที่ใช้ในเทอร์มินัล (terminal) บรรทัดคำสั่งที่คุณต้องป้อนลงในเทอร์มินัลจะเริ่มต้นด้วยเครื่องหมาย $ เสมอ โดยคุณไม่จำเป็นต้องพิมพ์อักขระ $ ดังกล่าวลงไป เนื่องจากมันเป็นเพียงสัญลักษณ์บรรทัดคำสั่ง (command line prompt) ที่ระบุจุดเริ่มต้นของแต่ละคำสั่ง ส่วนบรรทัดที่ไม่ได้ขึ้นต้นด้วย $ มักแสดงผลลัพธ์จากการประมวลผลคำสั่งก่อนหน้านั้น นอกจากนี้ ตัวอย่างการป้อนคำสั่งเฉพาะของ PowerShell จะใช้เครื่องหมาย > แทนเครื่องหมาย $

การติดตั้ง rustup บน Linux หรือ macOS

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

$ curl --proto '=https' --tlsv1.2 https://sh.rustup.rs -sSf | sh

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

Rust is installed now. Great!

นอกจากนี้คุณยังต้องใช้ ลิงก์เกอร์ (linker) ซึ่งเป็นโปรแกรมที่ Rust ใช้รวมผลลัพธ์จากการคอมไพล์ต่างๆ เข้ามาเป็นไฟล์เดียว โอกาสที่คุณจะมีลิงก์เกอร์ติดตั้งอยู่แล้วนั้นมีค่อนข้างสูง แต่หากคุณพบข้อผิดพลาดเกี่ยวกับลิงก์เกอร์ คุณควรติดตั้งคอมไพเลอร์ภาษา C (C compiler) ซึ่งมักจะรวมลิงก์เกอร์มาให้ด้วย คอมไพเลอร์ภาษา C ยังมีประโยชน์เนื่องจากแพ็กเกจ Rust ทั่วไปบางแพ็กเกจต้องพึ่งพาโค้ดภาษา C และจำเป็นต้องใช้คอมไพเลอร์ภาษา C ในการทำงาน

บนระบบ macOS คุณสามารถติดตั้งคอมไพเลอร์ภาษา C ได้ด้วยการรันคำสั่ง:

$ xcode-select --install

สำหรับผู้ใช้ Linux โดยทั่วไปควรติดตั้ง GCC หรือ Clang ตามแต่เอกสารคู่มือของชุดแจกจ่าย (distribution) นั้นๆ แนะนำ ตัวอย่างเช่น หากคุณใช้ Ubuntu คุณสามารถติดตั้งแพ็กเกจ build-essential ได้

การติดตั้ง rustup บน Windows

สำหรับระบบ Windows ให้เปิดไปที่ https://www.rust-lang.org/tools/install และทำตามขั้นตอนแนะนำสำหรับการติดตั้ง Rust ในระหว่างขั้นตอนติดตั้ง คุณอาจได้รับคำแนะนำให้ติดตั้ง Visual Studio ซึ่งจะช่วยจัดเตรียมลิงก์เกอร์และไลบรารีดั้งเดิมของระบบ (native libraries) ที่จำเป็นสำหรับการคอมไพล์โปรแกรม หากต้องการศึกษาความช่วยเหลือเพิ่มเติมในขั้นตอนนี้ สามารถดูได้ที่ https://rust-lang.github.io/rustup/installation/windows-msvc.html

เนื้อหาที่เหลือของหนังสือเล่มนี้จะใช้คำสั่งที่สามารถใช้ได้ทั้งใน cmd.exe และ PowerShell หากมีจุดใดที่แตกต่างกันโดยเฉพาะ เราจะระบุคำแนะนำอธิบายวิธีการใช้งานไว้ให้

การแก้ไขปัญหาเบื้องต้น (Troubleshooting)

ในการตรวจสอบว่าคุณได้ติดตั้ง Rust เรียบร้อยถูกต้องหรือไม่ ให้เปิดเชลล์ (shell) ขึ้นมาแล้วป้อนคำสั่งนี้:

$ rustc --version

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

rustc x.y.z (abcabcabc yyyy-mm-dd)

หากคุณเห็นข้อมูลเหล่านี้ แสดงว่าคุณได้ทำการติดตั้ง Rust สำเร็จเรียบร้อยแล้ว! แต่หากไม่พบข้อมูลนี้ ให้ตรวจสอบว่า Rust ได้ถูกบันทึกลงในตัวแปรระบบ %PATH% ของคุณแล้วหรือยัง ตามขั้นตอนดังต่อไปนี้

ใน Windows CMD ให้ใช้คำสั่ง:

> echo %PATH%

ใน PowerShell ให้ใช้คำสั่ง:

> echo $env:Path

ใน Linux และ macOS ให้ใช้คำสั่ง:

$ echo $PATH

หากข้อมูลตัวแปรระบบถูกต้องแล้วแต่ Rust ยังไม่สามารถทำงานได้ คุณสามารถค้นหาความช่วยเหลือได้จากหลากหลายช่องทาง ลองดูวิธีการติดต่อกับเหล่า Rustaceans (ฉายาตลกๆ ที่พวกเราใช้เรียกกันเองในกลุ่มผู้ใช้ Rust) ได้ที่ หน้าชุมชนของเรา

การอัปเดตและการถอนการติดตั้ง

เมื่อคุณติดตั้ง Rust ผ่าน rustup แล้ว การอัปเกรดปรับปรุงเวอร์ชันใหม่ก็สามารถทำได้ง่ายๆ จากภายในเชลล์ของคุณ ให้รันสคริปต์อัปเดตดังต่อไปนี้:

$ rustup update

หากต้องการถอนการติดตั้ง Rust และ rustup ออกจากระบบ ให้รันสคริปต์ถอนการติดตั้งดังต่อไปนี้จากเชลล์ของคุณ:

$ rustup self uninstall

การอ่านเอกสารคู่มือในเครื่องของคุณ (Local Documentation)

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

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

การเลือกใช้เครื่องมือแก้ไขข้อความและ IDE

หนังสือเล่มนี้ไม่ได้กำหนดเครื่องมือที่คุณต้องใช้เขียนโค้ด Rust คุณสามารถเลือกใช้เครื่องมือแก้ไขข้อความ (text editor) ใดๆ ก็ตามในการเขียนโปรแกรมได้อย่างไม่มีปัญหา! อย่างไรก็ดี เครื่องมือแก้ไขข้อความและสภาพแวดล้อมการพัฒนาแบบรวม (IDE) จำนวนมากมีฟีเจอร์ช่วยเหลือสนับสนุนภาษา Rust อยู่ภายในตัว คุณสามารถดูรายการข้อมูลอัปเดตของโปรแกรมแก้ไขและ IDE ต่างๆ ได้ที่ หน้าเครื่องมือบนเว็บไซต์ Rust

การทำงานออฟไลน์ร่วมกับหนังสือเล่มนี้

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

$ cargo new get-dependencies
$ cd get-dependencies
$ cargo add rand@0.10.1 trpl@0.2.0

คำสั่งนี้จะทำการบันทึกแคช (cache) ของแพ็กเกจเหล่านี้ไว้ในเครื่องของคุณ ทำให้คุณไม่จำเป็นต้องดาวน์โหลดเพิ่มอีกในภายหลัง และเมื่อคุณรันคำสั่งเหล่านี้สำเร็จแล้ว คุณไม่จำเป็นต้องเก็บโฟลเดอร์ get-dependencies นี้ไว้อีกต่อไป และเมื่อคุณทำตามนี้แล้ว คุณจะสามารถใส่แฟล็ก --offline ร่วมกับทุกคำสั่งของ cargo ในเนื้อหาส่วนที่เหลือของหนังสือเล่มนี้ เพื่อใช้งานเวอร์ชันที่ถูกแคชไว้แทนการพยายามเชื่อมต่อผ่านเครือข่ายอินเทอร์เน็ต