How-To Guides

إتقان لغة Go على Linux: دليل شامل للتثبيت

أصبحت لغة Go، المعروفة أيضًا بـ Golang، بسرعة واحدة من أكثر اللغات تفضيلاً لبناء تطبيقات قابلة للتوسع وعالية الأداء. سواء كنت تقوم بتطوير خدمات سحابية أصلية، أو خدمات مصغرة (Microservices)، أو أدوات سطر أوامر (CLI)، فإن وجود بيئة تطوير قوية للغة Go على Linux أمر أساسي. يشرح هذا الدليل لك عملية تثبيت Go على توزيعات Linux، مما يضمن إعداد بيئتك بشكل صحيح لتطوير مثالي.

المتطلبات الأساسية

قبل الغوص في عملية التثبيت، تأكد من أن نظام Linux الخاص بك يلبي المتطلبات الأساسية التالية:

  • توزيع Linux حديث (Ubuntu، Debian، Fedora، CentOS، إلخ)
  • صلاحيات sudo للتثبيت على مستوى النظام
  • وصول إلى الطرفية (Terminal)

تم تصميم Go لتكون خفيفة الوزن، لذا فإن متطلبات الموارد ضئيلة. ومع ذلك، يُنصح بامتلاك 4 جيجابايت على الأقل من ذاكرة الوصول العشوائي (RAM) لتجميع المشاريع الأكبر.

تنزيل أحدث إصدار من Go

حتى عام 2024، يُعد النهج الموصى به لتثبيت Go على Linux هو عبر التوزيع الثنائي الرسمي. تضمن هذه الطريقة حصولك على أحدث إصدار مستقر وتحكمًا كاملًا في مسار التثبيت.

  1. قم بزيارة صفحة تنزيل Go الرسمية.
  2. اختر أحدث إصدار مستقر لـ Linux amd64 (أو arm64 إذا كان ذلك مناسبًا).
  3. قم بتنزيل ملف الحزمة (tarball)، على سبيل المثال، go1.22.3.linux-amd64.tar.gz.

تثبيت Go يدويًا

يسمح لك استخدام ملف الحزمة (tarball) بتثبيت Go في أي مجلد. سنستخدم /usr/local/go لأنه الموقع التقليدي ويضمن إمكانية الوصول إلى الملف الثنائي على مستوى النظام بالكامل.

أولاً، قم بفك ضغط ملف الحزمة إلى /usr/local:

sudo tar -C /usr/local -xzf go1.22.3.linux-amd64.tar.gz

يفك هذا الأمر ضغط هيكل مجلدات Go في /usr/local/go. يغير علم -C المجلد قبل فك الضغط، ويحدد -xzf فك الضغط مع فك ضغط gzip.

إعداد متغيرات البيئة

لكي تعمل Go بشكل صحيح، يجب تعيين متغيرين للبيئة: PATH و GOPATH. يجب إضافة هذه إلى ملف إعدادات shell الخاص بك، وهو عادةً ~/.bashrc أو ~/.zshrc اعتمادًا على shell الخاص بك.

افتح ملف إعدادات shell الخاص بك:

nano ~/.bashrc

أضف الأسطر التالية إلى نهاية الملف:

# Go Installation
export PATH=$PATH:/usr/local/go/bin
export GOPATH=$HOME/go
export PATH=$PATH:$GOPATH/bin
  • PATH: يضيف مجلد الملفات الثنائية لـ Go إلى مسار التنفيذ القابل للتنفيذ في نظامك.
  • GOPATH: يحدد مجلد مساحة العمل لتبعيات Go والملفات الثنائية المُجمّعة. الافتراضي هو $HOME/go.

احفظ الملف وأعد تحميل إعدادات shell الخاصة بك:

source ~/.bashrc

التحقق من التثبيت

لتأكيد أن Go مثبتة بشكل صحيح، قم بتشغيل الأوامر التالية:

go version

يجب أن ترى مخرجات مشابهة لما يلي:

go version go1.22.3 linux/amd64

بالإضافة إلى ذلك، تحقق من متغيرات البيئة:

go env GOPATH
go env GOROOT

يجب أن يشير GOROOT إلى /usr/local/go، ويجب أن يشير GOPATH إلى مجلد go في مجلد المستخدم الرئيسي (home directory).

إنشاء مشروع Go الأول

لنختبر التثبيت من خلال إنشاء برنامج "Hello, World" بسيط. انتقل إلى مجلد GOPATH/src الخاص بك:

cd $GOPATH/src
mkdir -p hello
cd hello

أنشئ ملفًا باسم main.go:

cat > main.go <<EOF
package main

import "fmt"

func main() {
    fmt.Println("Hello, Go on Linux!")
}
EOF

شغّل البرنامج:

go run main.go

إذا تم الإعداد بشكل صحيح، يجب أن ترى المخرجات: Hello, Go on Linux!

إدارة التبعيات باستخدام وحدات Go

تستخدم مشاريع Go الحديثة الوحدات (Modules) لإدارة التبعيات. تأكد من تهيئة مشروعك كوحدة:

go mod init hello

ينشئ هذا ملف go.mod، الذي يتتبع التبعيات وإصدارات الوحدات. من هنا، يمكنك إضافة الحزم الخارجية باستخدام go get أو من خلال استيرادها في كودك وتشغيل go mod tidy.

أفضل الممارسات لتطوير Go على Linux

  • إبقاء Go محدثة: تحقق بانتظام من الإصدارات الجديدة وحدّث تثبيتك للاستفادة من تحسينات الأداء وإصلاحات الأمان.
  • استخدام دعم IDE: قم بدمج Go مع المحررات مثل VS Code أو GoLand أو Vim/Neovim باستخدام خادم اللغة gopls لإكمال تلقائي، وفحص الكود (linting)، وتصحيح الأخطاء.
  • التنظيف: قم بتنظيف الحزم والملفات الثنائية غير المستخدمة دوريًا باستخدام go clean للحفاظ على ترتيب مساحة عملك.

استكشاف الأخطاء وإصلاحها للمشاكل الشائعة

  • لم يتم العثور على الأمر: تأكد من أن PATH مضبوط بشكل صحيح وأن إعدادات shell الخاصة بك محمّلة.
  • أخطاء الصلاحيات: تجنب تشغيل أوامر Go باستخدام sudo. بدلاً من ذلك، تأكد من الملكية المناسبة لمجلدي GOPATH و GOROOT.
  • تعارضات الإصدارات: إذا تم تثبيت عدة إصدارات، حدد الإصدار النشط من خلال تعديل أولوية PATH أو باستخدام مديري الإصدارات مثل gvm.

الخاتمة

إن تثبيت Go على Linux عملية بسيطة تفتح قدرات قوية لبناء برامج فعالة وقابلة للتوسع. من خلال اتباع هذا الدليل، قمت بنجاح بإعداد بيئة تطوير احترافية للغة Go، وإعداد متغيرات البيئة الأساسية، والتحقق من تثبيتك بمثال عملي. عندما تبدأ في بناء المشاريع، استغل نظام وحدات Go وأدوات النظام البيئي لتبسيط سير عملك. سواء كنت مطورًا متمرسًا أو مبتدئًا، فإن بيئة Go مُعدّة جيدًا على Linux ستخدم كقاعدة صلبة لمشاريعك المستقبلية. بالتوفيق في البرمجة!

Share: