สืบเนื่องจากมีพวกเราติดตั้งระบบบนเครื่อง Windows เพื่อเตรียมเรียนหลักสูตร Blockchain for Developer แล้วเจอปัญหาของ Geth ที่ติดตั้งแล้วมี Error พลเลยมาบอกวิธีแก้ไขให้ในนี้ครับ
รูปแบบของปัญหา
ปัญหานี้จะเจอระหว่างการติดตั้ง Geth ตามนี้ครับ
ทำให้ตอนเรียกใช้คำสั่ง geth –version ใน Command Prompt หรือ Terminal จะแสดงข้อความประมาณว่า หาคำสั่งของระบบ geth ไม่เจอ
`geth` is not recognized as an interrnal or external command, operable program or batch file.
วิธีแก้ไข
ปัญหานี้เกิดจากตัวติดตั้งไม่สามารถไปแก้ไข PATH ใน System Environment ได้ ทำให้เราต้องมาลงมือทำด้วยตัวเองครับ
เริ่มจาก
1. เช็คที่อยู่ของ Geth ว่าเรียบร้อยดีไหม
โดยปกติ Geth จะถูกติดตั้งลงไปที่ Drive C: ให้ลองเข้าไปดูตามที่อยู่ในภาพ ว่ามีการติดตั้ง Geth เรียบร้อย
และให้ copy PATH ของโฟลเดอร์ Geth ในจุดที่ 3 เอาไว้
นี่คือที่อยู่ PATH ที่เราต้องเอาไปใส่ในระบบด้วยตัวเอง (ส่วนที่ Error คือมันไม่สามารถเข้าไปแก้ไขได้)
2. ใส่ Path ของ Geth ให้กับ System Environment
จาก Window Explorer เราสามารถคลิกขวาที่ This PC และเลือกคำสั่ง Properties ได้
จากนั้นเลือก Advanced system settings และคลิกปุ่ม Environment Variables
จากหน้าต่าง Environment Variables
ให้เลือกรายการชื่อ Path ใน System Variables และกดปุ่ม Edit
ส่วนนี้เราจะเพิ่ม Path ที่เรา copy มาจากขั้นตอนแรก ให้เข้าไปอยู่ในรายการ
กดปุ่ม New และวาง PATH ของ Geth ลงไป กดปุ่ม OK และกดยืนยันจนออกมาด้านนอกสุด
3. ตรวจเช็คความถูกต้อง
หลังจากใส่ Path ของ Geth แล้ว เราจะมาเช็คว่า Path ที่ใส่ถูกต้อง และสามารถเรียกใช้งานได้
ถ้ามีการเปิดโปรแกรมจำพวก Command Line เช่น Command Prompt, Powershell, หรือ Terminal ให้ปิดโปรแกรมเหล่านั้นลงทั้งหมด และเปิดขึ้นมาใช้งานใหม่ เพื่อให้โปรแกรมอ่านค่าจาก System Environment ที่เพิ่งถูกแก้ไขไป
พิมพ์คำสั่ง geth version ควรจะเห็นข้อความประมาณด้านล่าง
C:\Users\teerasej>geth version
Geth
Version: 1.8.17-stable
Git Commit: 8bbe72075e4e16442c4e28d999edee12e294329e
Architecture: amd64
Protocol Versions: [63 62]
Network Id: 1
Go Version: go1.11.1
Operating System: windows
GOPATH=
GOROOT=C:\go
สนใจเพิ่มทักษะด้าน Blockchain ให้กับนักพัฒนาในทีมของคุณ
ดูรายละเอียดหลักสูตร Blockchain for Developer หรือโทรติดต่อ 083-071-3373 เพื่อขอบริการจัดอบรม in-house ได้ครับ