كيفية تثبيت البرامج من الشيفرة المصدرية على Ubuntu باستخدام make install خطوة بخطوة

目次

1. المقدمة

عند استخدامك لنظام Ubuntu، قد تصادف خطوة “make install” أثناء تثبيت بعض البرامج. في العادة، يتم تثبيت التطبيقات عبر أمر “apt” من خلال الحزم المتوفرة في المستودعات الرسمية، لكن ليس كل البرامج متوفرة هناك. إذا كنت ترغب في استخدام أحدث إصدار أو ترغب في تشغيل برنامج قمت بتطويره بنفسك، ستحتاج إلى تنزيل الشيفرة المصدرية وبناؤها (compile) بنفسك ثم تثبيتها.

هنا تظهر أهمية أمر “make install”.

“make install” هو أمر يُستخدم لنقل البرامج المترجمة من الشيفرة المصدرية إلى المواقع الصحيحة على النظام. فهو لا يقتصر فقط على بناء البرنامج (make)، بل يقوم أيضًا بنسخ الملفات تلقائيًا إلى الأدلة المناسبة في النظام. هذه إحدى الخطوات الأساسية التي تُستخدم كثيرًا في بيئة لينكس.

في هذا المقال، سنشرح للمبتدئين كيفية بناء الشيفرة المصدرية وتثبيت البرامج باستخدام make install على Ubuntu خطوة بخطوة. سنوضح أيضًا أكثر الأخطاء الشائعة التي قد تظهر أثناء العملية وكيفية التعامل معها.

لنبدأ أولاً بتحضير أدوات التطوير اللازمة لعملية البناء.

年収訴求

2. تثبيت أدوات التطوير اللازمة

لبناء وتثبيت الشيفرة المصدرية، تحتاج أولاً إلى تجهيز أدوات التطوير الأساسية على Ubuntu. بدون هذه الأدوات، قد لا يعمل أمر “make” أو قد تواجه العديد من أخطاء البناء. لتحظى بتجربة تثبيت سهلة وسلسة، من المهم إعداد بيئة التطوير منذ البداية.

تثبيت الحزمة الأساسية “build-essential”

في Ubuntu، تتوفر حزمة تسمى “build-essential” تحتوي على مترجم C (gcc)، وأدوات البناء (make)، ومكتبات مرتبطة ضرورية. عند تثبيت هذه الحزمة، ستكون قد جهزت البيئة الأساسية للبناء بسهولة.

خطوات التثبيت كما يلي:

sudo apt update
sudo apt install build-essential

ابدأ بتحديث معلومات الحزم، ثم ثبّت build-essential. بهذه الخطوات البسيطة ستكون لديك الأدوات الأساسية اللازمة للبناء.

التحقق من التثبيت بعد الانتهاء

يمكنك التأكد من أن الأدوات قد ثُبتت بشكل صحيح عبر الأوامر التالية:

gcc --version
make --version

إذا ظهرت لك معلومات الإصدار لكل من gcc (مترجم C) وmake (أداة البناء)، فقد نجح التثبيت. إذا ظهرت لك رسالة خطأ، تحقق من رسالة الخطأ وحاول إعادة التثبيت.

الآن أصبح لديك الأساس اللازم لبدء بناء الشيفرة المصدرية على Ubuntu. الخطوة التالية هي الحصول على الشيفرة المصدرية وفك ضغطها.

3. الحصول على الشيفرة المصدرية واستخراجها

بعد تثبيت أدوات التطوير، أصبحت جاهزًا للحصول على الشيفرة المصدرية للبرنامج الذي ترغب في بنائه. غالبًا ما توفر الجهة المطورة الشيفرة المصدرية للتحميل، ثم تقوم بفك ضغطها في دليل العمل. في هذا القسم نشرح طرق الحصول على الشيفرة المصدرية وكيفية استخراجها.

طرق الحصول على الشيفرة المصدرية

هناك عدة طرق شائعة للحصول على الشيفرة المصدرية:

تحميلها من الموقع الرسمي

معظم مشاريع المصادر المفتوحة توفر ملفات الشيفرة المصدرية بصيغ مثل “tar.gz” أو “tar.bz2” على مواقعها الرسمية. يمكنك التحميل باستخدام الأمر التالي:

wget https://example.com/software-1.2.3.tar.gz

يرجى استبدال الرابط أعلاه بالرابط المقدم على صفحة تحميل البرنامج الذي تريده.

استنساخها من GitHub أو مواقع شبيهة

الكثير من المشاريع تستضيف الشيفرة المصدرية على منصات مثل GitHub، ويمكنك استخدام git لاستنساخ الشيفرة.

إذا لم يكن git مثبتًا لديك، ثبّته بالأمر التالي:

sudo apt install git

ثم استنسخ المستودع:

git clone https://github.com/username/repository.git

تأكد من استخدام عنوان المستودع الصحيح كما هو مذكور في الصفحة الرسمية للمشروع.

طريقة فك ضغط الملفات المضغوطة

إذا تم توفير الشيفرة المصدرية كملف مضغوط، استخدم الأمر المناسب لاستخراجها:

الأنواع الشائعة من الملفات المضغوطة وأوامر استخراجها هي:

  • لصيغة .tar.gz:
  tar -xvzf software-1.2.3.tar.gz
  • لصيغة .tar.bz2:
  tar -xvjf software-1.2.3.tar.bz2
  • لصيغة .zip:
  unzip software-1.2.3.zip

عند انتهاء الاستخراج، ستجد مجلدًا باسم البرنامج والإصدار. انتقل إليه للمتابعة:

cd software-1.2.3

الآن أصبحت جاهزًا لبدء عملية البناء الفعلية. الخطوة التالية هي بناء وتثبيت البرنامج.

4. خطوات البناء والتثبيت

بعد تجهيز الشيفرة المصدرية، يمكنك الآن بدء عملية البناء والتثبيت. في هذا القسم نشرح الخطوات المعتادة في Ubuntu بشكل مفصل.

التحضير للبناء: تنفيذ ./configure

تحتوي معظم الشيفرات المصدرية على “سكريبت إعداد” لتجهيز البيئة قبل البناء. عادةً، قم بتنفيذ الأمر التالي داخل مجلد الشيفرة:

./configure

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

إذا لم تجد سكريبت configure، راجع ملفات README أو INSTALL للحصول على تعليمات البناء المناسبة.

بناء البرنامج: أمر make

بعد الإعداد، يمكنك بناء البرنامج بتحويل الشيفرة المصدرية إلى برنامج جاهز للتشغيل:

make

سينفذ هذا الأمر عملية البناء تلقائيًا كما هو محدد في Makefile. قد تستغرق العملية وقتًا، لذا انتظر حتى تكتمل وراقب ظهور أي أخطاء.

في حالة ظهور أخطاء، تحقق من رسائل الخطأ وقم بحل مشاكل المكتبات أو التبعيات الناقصة.

تثبيت البرنامج: أمر sudo make install

إذا اكتملت عملية البناء بنجاح، يمكنك الآن تثبيت البرنامج على النظام (غالبًا يتطلب صلاحيات الجذر):

sudo make install

ينسخ هذا الأمر الملفات المترجمة إلى الأدلة المناسبة بالنظام لتصبح متاحة للاستخدام.

أخطاء شائعة أثناء العمل وكيفية حلها

قد تواجه بعض الأخطاء أثناء عملية البناء أو التثبيت، منها:

  • Permission denied (خطأ في الصلاحيات)
    → تأكد من استخدام sudo عند تنفيذ make install.
  • Missing dependencies (تبعيات ناقصة)
    → اقرأ رسالة الخطأ وثبّت المكتبات أو الحزم المطلوبة.
  • configure: command not found
    → قد لا يتوفر سكريبت configure أو لا يملك صلاحيات التنفيذ. أعطه الصلاحية بالأمر chmod +x configure أو راجع خطوات البناء في ملفات التوثيق.

لا تتعجل، اقرأ رسائل الخطأ بعناية وحاول حل كل مشكلة حسب التعليمات.

5. التحقق بعد التثبيت

بعد تثبيت البرنامج بواسطة “sudo make install”، من المهم التأكد من أن التثبيت تم بشكل صحيح. إذا فشل التثبيت قد لا يعمل البرنامج أو لا يتم التعرف عليه كأمر في الطرفية.

تحديد مكان البرنامج المثبت

ابحث عن مكان تنفيذ البرنامج باستخدام أمر which:

which اسم_البرنامج

مثلاً إذا ثبت برنامج باسم sample:

which sample

إذا ظهر لك مسار مثل /usr/local/bin/sample أو /usr/bin/sample فهذا يعني أن التثبيت نجح. إذا لم يظهر شيء، تحقق من التثبيت أو من إعداد متغيرات المسار (PATH).

التحقق من الإصدار

غالبًا ما توفر البرامج خيارًا لعرض رقم الإصدار:

sample --version

إذا ظهر رقم الإصدار فهذا يدل على نجاح التثبيت. أما إذا ظهرت رسالة خطأ أو لم يتم العثور على الأمر، راجع خطوات التثبيت مرة أخرى.

التحقق من متغير PATH

عادةً ما يتم تثبيت البرامج في /usr/local/bin. إذا لم يكن هذا الدليل مضمنًا في PATH فلن يتعرف الطرفية على البرنامج.
يمكنك التحقق بالأمر:

echo $PATH

إذا لم يكن /usr/local/bin ظاهرًا، أضفه إلى ملف الإعدادات الخاص بالشل (مثلاً ~/.bashrc أو ~/.zshrc):

export PATH=/usr/local/bin:$PATH

لتطبيق الإعدادات فورًا:

source ~/.bashrc

الآن يمكنك تشغيل البرامج المثبتة بدون مشاكل من الطرفية.

6. كيفية إزالة التثبيت (إلغاء تثبيت البرنامج)

البرامج المثبتة من الشيفرة المصدرية لا تُدار عادةً بواسطة أدوات إدارة الحزم مثل apt. لذلك يجب إزالتها يدويًا إذا لم تعد بحاجة لها.

إلغاء التثبيت باستخدام make uninstall

بعض البرامج تدعم أمر الإلغاء التالي من داخل نفس مجلد الشيفرة المصدرية:

sudo make uninstall

هذا الأمر يحذف تلقائيًا الملفات التي تمت إضافتها عند التثبيت. لكن ليس كل البرامج تدعم هذا الأمر. راجع ملفات README أو INSTALL للتأكد.

ملاحظة هامة:

  • نفذ الأمر دائمًا من نفس مجلد الشيفرة المصدرية الذي تم التثبيت منه.
  • إذا حذفت الشيفرة المصدرية، لن يعمل make uninstall!

إزالة الملفات يدويًا

إذا لم يكن make uninstall مدعومًا، عليك حذف الملفات يدويًا. عادةً ما تتواجد في /usr/local/bin أو /usr/local/lib.

حدد الملفات التي تم تثبيتها واحذفها بحذر. مثلاً إذا كان هناك ملف ثنائي في /usr/local/bin:

sudo rm /usr/local/bin/اسم_البرنامج

عند الحذف اليدوي، تأكد من حذف كل الملفات المتعلقة بالبرنامج.

إدارة التثبيت بواسطة checkinstall

لجعل عملية الإلغاء أسهل مستقبلًا، يمكنك استخدام أداة “checkinstall”. فهي تتيح تثبيت البرنامج كحزمة deb يمكن إدارتها لاحقًا بواسطة apt أو dpkg.

لتثبيت checkinstall:

sudo apt install checkinstall

بعد البناء، استخدم:

sudo checkinstall

بهذا يمكنك إدارة الحزمة بسهولة، سواء للإزالة أو لإعادة التثبيت.

7. التثبيت في بيئة غير متصلة بالإنترنت

أحيانًا قد تحتاج إلى تثبيت البرامج على Ubuntu في بيئة لا تتوفر فيها الإنترنت. في العادة يعتمد تثبيت الحزم والاعتمادات على الاتصال بالإنترنت، ولكن يمكنك أيضًا تنفيذ “make install” وبناء البرامج يدويًا في وضع عدم الاتصال إذا اتبعت بعض الخطوات.

كيفية تجهيز build-essential في وضع عدم الاتصال

ستحتاج أولاً إلى أدوات التطوير الأساسية (حزمة build-essential). للحصول عليها بدون إنترنت، استخدم جهاز Ubuntu آخر متصل بالإنترنت لتنزيل الحزمة وجميع الاعتمادات مسبقًا.

استخدام أداة apt-offline

بواسطة أداة apt-offline يمكنك جمع الحزم وجميع الاعتمادات اللازمة على جهاز متصل بالإنترنت ثم نقلها بواسطة USB أو وسيلة تخزين أخرى.

لتثبيت apt-offline على الجهاز المتصل بالإنترنت:

sudo apt install apt-offline

بعدها، أنشئ ملف طلب على الجهاز غير المتصل، ثم استخدم الجهاز المتصل لجمع الحزم، وانقلها لتثبيتها على الجهاز غير المتصل.

استخدام وسائط تثبيت Ubuntu كمصدر لـ APT

يمكنك أيضًا استخدام قرص تثبيت Ubuntu أو USB كمصدر للحزم. غالبًا ما تحتوي هذه الوسائط على الحزم الأساسية مثل build-essential.

أدخل وسائط التثبيت وقم بتركيبها وأضفها كمصدر APT:

sudo mount /dev/sdb1 /mnt
sudo apt-cdrom -d=/mnt add

بعد ذلك يمكنك تحديث الحزم وتثبيت build-essential كما في الوضع العادي:

sudo apt update
sudo apt install build-essential

بهذه الطريقة يمكنك تجهيز بيئة البناء بدون اتصال إنترنت.

نقل واستخراج الشيفرة المصدرية

بعد تجهيز الأدوات، قم بتنزيل الشيفرة المصدرية مسبقًا على جهاز آخر وانقلها إلى الجهاز غير المتصل. بعد نقل الملفات، قم باستخراجها كما في الوضع العادي:

tar -xvzf software-1.2.3.tar.gz
cd software-1.2.3

ثم تابع خطوات البناء والتثبيت المعتادة: ./configure ثم make ثم sudo make install.

نصائح هامة

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

8. الأسئلة الشائعة (FAQ)

عند تثبيت البرامج باستخدام “make install” في Ubuntu، قد تواجه العديد من الأسئلة أو المشاكل، خاصة إذا كنت مبتدئًا. هنا أكثر الأسئلة شيوعًا مع الإجابات.

س1. تظهر لي رسالة “Permission denied” عند تنفيذ make install. ماذا أفعل؟

ج1.
يجب تنفيذ make install بصلاحيات المدير (sudo) لأن الملفات تُنسخ إلى مسارات النظام مثل /usr/local/bin. استخدم الأمر:

sudo make install

بهذا تضمن إتمام التثبيت بالصلاحيات المناسبة.

س2. عند تنفيذ ./configure تظهر رسالة “No such file or directory”. ما السبب؟

ج2.
هذا يعني أن سكريبت configure غير موجود في المجلد الحالي. الأسباب الشائعة:

  • لم يتم تحميل الشيفرة المصدرية بالكامل (ربما فشل التحميل).
  • المشروع لا يستخدم autotools (ربما يستخدم CMake أو أداة أخرى).
  • لا توجد صلاحية تنفيذ للسكريبت.

تحقق من وجود ملف configure، وإذا لم يكن موجودًا راجع ملفات README أو INSTALL لمزيد من التعليمات.

س3. تظهر لي رسالة أن أمر make غير موجود. ماذا أفعل؟

ج3.
لم يتم تثبيت أدوات البناء بعد. ثبّت build-essential بالأوامر التالية:

sudo apt update
sudo apt install build-essential

تشمل الحزمة جميع الأدوات الأساسية مثل make و gcc.

س4. كيف يمكنني تثبيت build-essential في وضع عدم الاتصال؟

ج4.
يمكنك تنزيل الحزمة مسبقًا مع جميع الاعتمادات باستخدام apt-offline أو باستخدام وسائط تثبيت Ubuntu كمصدر للحزم. هذه الطرق تتيح لك تجهيز البيئة دون إنترنت.

9. الخلاصة

يعد “make install” أداة أساسية لتثبيت البرامج من الشيفرة المصدرية على Ubuntu، خصوصًا عندما تحتاج إلى نسخ محدثة أو برامج مخصصة غير متوفرة عبر إدارة الحزم العادية.

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

لا داعي للخوف من عمليات البناء على لينكس إذا اتبعت الخطوات الأساسية وقرأت رسائل الخطأ بعناية. إذا كنت ترغب في استكشاف المزيد من برامج Ubuntu، ننصحك بإتقان أوامر make install والحصول على بيئة تطوير أكثر مرونة واحترافية.

侍エンジニア塾