پرش به محتوا
نوین هاست
  • سرور مجازی
  • درباره ما
  • تماس با ما
  • بازارچه
  • دانشنامه
نوین هاست
  • سرور مجازی
    • برگشت
    • سرور مجازی ایران
      • برگشت
      • سرور مجازی برج میلاد
      • سرور مجازی زیرساخت
    • سرور مجازی اروپا
      • برگشت
      • سرور مجازی المان
      • سرور مجازی انگلیس
      • سرور مجازی فرانسه
      • سرور مجازی اتریش
      • سرور مجازی هلند
      • سرور مجازی بلغارستان
      • سرور مجازی مجارستان
      • سرور مجازی دانمارک
      • سرور مجازی سوئد
      • سرور مجازی جزیره من
      • سرور مجازی جمهوری چک
      • سرور مجازی ایتالیا
      • سرور مجازی فنلاند
      • سرور مجازی یونان
      • سرور مجازی سوئیس
      • سرور مجازی ایسلند
      • سرور مجازی کرواسی
      • سرور مجازی اسپانیا
    • سرور مجازی آسیا
      • برگشت
      • سرور مجازی ترکیه
      • سرور مجازی سنگاپور
      • سرور مجازی مالزی
      • سرور مجازی شیلی
      • سرور مجازی هنگ کنگ
      • سرور مجازی امارات
      • سرور مجازی ژاپن
      • سرور مجازی روسیه
    • سرور مجازی آمریکا
      • برگشت
      • سرور مجازی امریکا
      • سرور مجازی کانادا
    • سایر VPS ها
      • برگشت
      • سرور مجازی استرالیا
      • سرور مجازی رایگان
      • سرور مجازی اقتصادی
      • سرور مجازی ترید و بایننس
      • سرور مجازی با کارت گرافیک
      • سرور مجازی نیجریه
      • سرور مجازی بورس
      • سرور مجازی کلاس آنلاین
      • سرور مجازی کاهش پینگ
      • سرور مجازی والتر
      • سرور مجازی فارکس
      • سرور مجازی میکروتیک
      • سرور مجازی NVME
  • سرور اختصاصی
    • برگشت
    • سرور اختصاصی ایران
      • برگشت
      • سرور اختصاصی برج میلاد
      • سرور اختصاصی زیرساخت
    • سرور اختصاصی اروپا
      • برگشت
      • سرور اختصاصی آلمان
      • سرور اختصاصی ترکیه
      • سرور اختصاصی فنلاند
      • سرور اختصاصی هلند
      • سرور اختصاصی انگلیس
      • سرور اختصاصی فرانسه
    • سرور اختصاصی آمریکا
      • برگشت
      • سرور اختصاصی آمریکا
      • سرور اختصاصی کانادا
    • کولوکیشن
      • برگشت
      • آسیاتک
      • زیرساخت
  • هاست
    • برگشت
    • هاست دانلود
    • هاست نامحدود
    • هاست وردپرس
    • هاست ویندوز ایران
  • نوین پلاس +
  • پنل کاربری ارتباط با ما
  • سرور مجازی
  • سرور مجازی ایرانسرور مجازی حرفه ای از ایران
  • سرور مجازی اروپاپایداری و کیفیت ، سرعت بالا
  • سرور مجازی آسیاوب سرور لایت اسپید و امنیت و سرعت بالا
  • سایر VPS هابهینه برای فروشگاه های وردپرسی
  • سرور مجازی زیرساخت
    • سرور مجازی برج میلاد
  • سرور مجازی المان
    • سرور مجازی فرانسه
    • سرور مجازی سوئد
    • سرور مجازی اتریش
    • سرور مجازی اسپانیا
    • سرور مجازی انگلیس
    • سرور مجازی ایتالیا
    • سرور مجازی ایسلند
    • سرور مجازی بلغارستان
    • سرور مجازی سوئیس
    • سرور مجازی جزیره من
    • سرور مجازی جمهوری چک
    • سرور مجازی فنلاند
    • سرور مجازی دانمارک
    • سرور مجازی مجارستان
    • سرور مجازی هلند
    • سرور مجازی یونان
  • سرور مجازی شیلی
    • سرور مجازی روسیه
    • سرور مجازی ترکیه
    • سرور مجازی مالزی
    • سرور مجازی ژاپن
    • سرور مجازی سنگاپور
    • سرور مجازی هنگ کنگ
    • سرور مجازی امارات
  • سرور مجازی کانادا
    • سرور مجازی امریکا
    • سرور مجازی نیجریه
    • سرور مجازی استرالیا
    • سرور مجازی NVME
    • سرور مجازی با کارت گرافیک
    • سرور مجازی رایگان
    • سرور مجازی ترید و بایننس
    • سرور مجازی فارکس
    • سرور مجازی کلاس آنلاین
    • سرور مجازی میکروتیک
    • سرور مجازی والتر
    • سرور مجازی NVME
    • سرور مجازی اقتصادی
  • سرور اختصاصی
  • سرور اختصاصی ایرانمنابع کاملا اختصاصی و قدرتمند
  • سرور اختصاصی اروپابا ip اختصاصی از بهترین کشور ها
  • سرور اختصاصی آمریکاup time 99.99%
  • سایر VDS ها
  • برج میلاد
    • زیرساخت
  • سرور اختصاصی آلمان
    • سرور اختصاصی انگلیس
    • سرور اختصاصی ترکیه
    • سرور اختصاصی فرانسه
    • سرور اختصاصی فنلاند
    • سرور اختصاصی هلند
  • سرور اختصاصی آمریکا
    • سرور اختصاصی کانادا
  • کولوکیشن
  • آسیاتک
  • زیرساخت
  • هاست
  • دامنه
  • نوین پلاس +
021-49624 ورود / عضویت
لینوکس

راهنمای لینوکس

70
  • اجرای دستورات لینوکس در ویندوز
  • راه اندازی سایت در سرور لینوکس
  • IP شناور در اوبونتو و دبیان
  • بازیابی رمز root
  • آموزش بکاپ از سرور لینوکس
  • آموزش اجرای دستور از راه دور
  • ایجاد یوزر در لینوکس
  • تفاوت ipv4 با ipv6 چیست
  • دستور tar لینوکس
  • کانفیگ IPv6 در لینوکس
  • بکاپ گیری از سرور لینوکس
  • راه اندازی سایت در سرور
  • نصب فایروال در لینوکس
  • لیست کردن کاربران در لینوکس
  • پارتیشن بندی در لینوکس
  • بش bash چیست؟
  • آموزش تغییر نام فایل در لینوکس
  • آموزش نصب آلمالینوکس
  • آلمالینوکس
    • تبدیل Centos به AlmaLinux
    • نصب Visual Studio Code در آلمالینوکس
    • نصب پایتون روی آلمالینوکس
    • نصب Node.js در AlmaLinux
  • دبیان
    • ارتقا دبیان
  • اوبونتو
    • نصب NextCloud در اوبونتو
    • فعال کردن SSH اوبونتو
    • نصب ماینکرافت روی اوبونتو
    • نصب کاساندرا Cassandra در اوبونتو
    • آموزش نصب اوبونتو
    • نصب Graylog در اوبونتو
    • نصب Redis در اوبونتو
    • نصب Maven در اوبونتو
    • نصب تامکت در اوبونتو
    • آموزش نصب Ghost CMS در ubuntu
    • نصب GitLab در اوبونتو
    • نصب GCC در اوبونتو
    • نصب جاوا در اوبونتو
    • نصب و راه اندازی Bind DNS Server اوبونتو
    • نصب جنکینز در اوبونتو
    • نصب وردپرس در اوبونتو
    • نصب Oh My Zsh در اوبونتو
    • نصب پرومتئوس در اوبونتو
    • نصب Kubectl در اوبونتو
    • نصب PyTorch در اوبونتو
    • حذف داکر در اوبونتو
    • نصب آناکوندا
    • آموزش نصب Wine
    • آموزش نصب آپاچی کافکا
    • نصب Xrdp در اوبونتو
    • نصب وایرشارک در اوبونتو
    • آموزش نصب Go در اوبونتو
    • آموزش نصب MariaDB در اوبونتو
    • آموزش نصب Ansible
    • نصب درایور انویدیا در اوبونتو
    • آموزش نصب Hadoop
    • آموزش نصب Terraform
    • نصب و کانفیگ SSH در Ubuntu
    • نصب KVM در Ubuntu
    • نصب گوگل کروم در ubuntu
    • آموزش نصب گرافانا
    • چک کردن نسخه ubuntu
    • آموزش نصب phpMyAdmin در اوبونتو
    • آموزش نصب Postman
    • نصب داکر در اوبونتو
    • نصب Redis در اوبونتو
    • نصب MySQL در اوبونتو
    • نصب و کانفیگ آپاچی در اوبونتو
    • کران جاب در اوبونتو
    • ارتقا اوبونتو
    • نصب MongoDB در اوبونتو
    • نصب محیط گرافیکی در اوبونتو

تحقیق و توسعه

8
  • آموزش Portainer داکر
  • پاک کردن کش DNS
  • افزایش امنیت سرور
  • آموزش لود بالانسینگ
  • پیکربندی SSL در PostgreSQL
  • پایتون
    • ترکیب دو لیست در پایتون
    • تبدیل رشته به عدد در پایتون
    • معکوس کردن لیست در پایتون

سوالات متداول

4
  • رید (RAID) چیست؟
  • عمومی
    • ترافیک مورد نیاز سایت
    • SELinux چیست؟
    • محافظت در برابر حملات DDoS
View Categories
  • خانه
  • مستدات
  • راهنمای لینوکس
  • اوبونتو
  • نصب GCC در اوبونتو

نصب GCC در اوبونتو

زمان مطالعه: 3 دقیقه

توسعه نرم‌افزار نقش مهمی در چشم‌انداز اقتصادی ایفا می‌کند. در هسته هر نرم‌افزاری یک عنصر حیاتی نهفته است – کامپایلر. وارد GCC (مجموعه کامپایلرهای GNU) یا به اختصار GCC شوید. در این مقاله، نحوه نصب GCC در اوبونتو ۲۲.۰۴ و کامپایل یک برنامه C را به شما نشان خواهیم داد.

GCC چیست؟ #

GCC یک کامپایلر پرکاربرد برای زبان‌های برنامه‌نویسی مختلف است – کامپایلر یک ابزار نرم‌افزاری است که کدی را که شما برای برنامه‌های کامپیوتری می‌نویسید، که معمولاً به عنوان “کد منبع” شناخته می‌شود، به دستورالعمل‌هایی که کامپیوتر می‌تواند بفهمد، ترجمه می‌کند. این فرآیند ترجمه به عنوان کامپایل شناخته می‌شود.

به عنوان بخش مهمی از توسعه نرم‌افزار آزاد و متن‌باز، GCC (مجموعه کامپایلرهای GNU) توسط بنیاد نرم‌افزار آزاد (FSF) از طریق تلاش مشترک توسعه‌دهندگان به رهبری ریچارد استالمن توسعه داده شد.

سرور مجازی

چگونه از جی سی سی استفاده کنیم؟ #

GCC به طور گسترده در ایجاد نرم‌افزار برای سیستم‌های شبه یونیکس مورد استفاده قرار می‌گیرد و برای پلتفرم‌های مختلف سازگار شده است که نشان‌دهنده سازگاری و انعطاف‌پذیری آن در حوزه برنامه‌نویسی متن‌باز است.

GCC (مجموعه کامپایلرهای GNU) از زبان‌های برنامه‌نویسی مختلفی برای کامپایل پشتیبانی می‌کند. اگرچه در ابتدا با زبان C توسعه داده شد، اما اکنون می‌تواند زبان‌های برجسته زیر مانند C++، Fortran، Ada و Go را کامپایل کند.

پیش‌ نیازها #

برای دنبال کردن این آموزش و نصب GCC در اوبونتو ۲۲.۰۴، به موارد زیر نیاز دارید:

  • آخرین نسخه سرور اوبونتو نصب شده باشد ؛
  • یک حساب کاربری با امتیازات مدیر.

۱. نحوه نصب GCC در اوبونتو ۲۲.۰۴ #

در قسمت اول این آموزش، نحوه نصب GCC روی اوبونتو را در سه مرحله و در قسمت دوم، نحوه کامپایل یک برنامه C را به شما نشان خواهیم داد.

ما روش‌های مختلف نصب GCC و کامپایل یک برنامه C را بررسی خواهیم کرد و گزینه‌های مختلف را بررسی خواهیم کرد.

مرحله ۱: به‌روزرسانی فهرست بسته‌های اوبونتو #

برای به‌روزرسانی لیست بسته‌ها، از دستور زیر استفاده کنید :

sudo apt update

مرحله ۲: نصب GCC روی اوبونتو #

حالا با دستور زیر GCC را نصب می‌کنیم.

sudo apt install gcc

اگر GCC از قبل روی سیستم شما نصب شده باشد، دستور، نسخه نصب شده را فهرست می‌کند.

شما می‌توانید GCC را با بسته build-essential نصب کنید. این کار GCC و همچنین سایر بسته‌های محبوب مانند را نصب می‌کند makeکه اغلب با GCC برای خودکارسازی فرآیند کامپایل نرم‌افزارهای بزرگتر استفاده می‌شود.

برای نصب build-essentials، از دستور زیر استفاده کنید:

sudo apt install build-essential

مرحله ۳: نصب GCC را آزمایش کنید #

حالا بیایید بررسی کنیم که آیا GCC روی اوبونتو نصب شده است یا خیر:

gcc --version

این باید نسخه و مجوز GCC را به شرح زیر برگرداند:

gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0
Copyright (C) 2021 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

۲. نحوه کامپایل یک برنامه C #

اکنون که GCC را روی اوبونتو نصب کرده‌ایم و همه چیز به درستی تنظیم شده است، می‌توانیم به کامپایل یک برنامه C ادامه دهیم.

مرحله ۱: نوشتن یک برنامه ساده به زبان C #

ویرایشگر کد مورد علاقه خود را باز کنید و کد منبع C زیر را در آن بنویسید:

#include <stdio.h>
int main() {
   printf("Welcome to novinhost Servers\n");
   return 0;
}

فایل را با نام example1.c ذخیره کنید.

مرحله ۲: کامپایل example1.c با استفاده از GCC #

حالا که کد منبع خود را داریم، می‌توانیم آن را با استفاده از دستور زیر با GCC کامپایل کنیم:

gcc example1.c

به طور پیش‌فرض، GCC کد منبع کامپایل شده را در فایلی به نام … خروجی می‌دهد.a.out

بیایید آن را اجرا کنیم و نتایج را بررسی کنیم:

didier@lab:~$ ./a.out
Welcome to NovinHost Servers

همچنین می‌توانید نام خروجی را با استفاده از کلید switch -oو به دنبال آن نام دلخواه مشخص کنید:

gcc example1.c -o example1

مرحله ۳: ایجاد یک فهرست اسمبلی از برنامه C #

همچنین می‌توانید از GCC برای تولید فهرست اسمبلی کد منبع C استفاده کنید. این کار را می‌توان با استفاده از -Sسوئیچ انجام داد:

 gcc -S example1.c

این دستور فایلی به نام ایجاد می‌کند example1.s. سپس می‌توانید محتوای آن را با استفاده از دستور زیر نمایش دهید:

cat example1.s

خروجی باید مشابه کد زیر باشد:

        .file   "example1.c"
        .text
        .section        .rodata
.LC0:
        .string "Welcome to NOVINHOST Servers"
        .text
        .globl  main
        .type   main, @function
main:
.LFB0:
        .cfi_startproc
        endbr64
        pushq   %rbp
        .cfi_def_cfa_offset 16
        .cfi_offset 6, -16
        movq    %rsp, %rbp
        .cfi_def_cfa_register 6
        leaq    .LC0(%rip), %rax
        movq    %rax, %rdi
        call    puts@PLT
        movl    $0, %eax
        popq    %rbp
        .cfi_def_cfa 7, 8
        ret
        .cfi_endproc
.LFE0:
        .size   main, .-main
        .ident  "GCC: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0"
        .section        .note.GNU-stack,"",@progbits
        .section        .note.gnu.property,"a"
        .align 8
        .long   1f - 0f
        .long   4f - 1f
        .long   5
۰:
        .string "GNU"
۱:
        .align 8
        .long   0xc0000002
        .long   3f - 2f
۲:
        .long   0x3
۳:
        .align 8
۴:

مرحله ۴: تولید اطلاعات اشکال‌زدایی #

یکی دیگر از گزینه‌های مفید GCC، تولید اطلاعات اشکال‌زدایی و ذخیره آن در برنامه کامپایل شده است. اگرچه این گزینه برای اشکال‌زدایی برنامه‌ها بسیار مفید است، اما نباید در نسخه نهایی منتشر شده استفاده شود زیرا باعث بزرگتر شدن برنامه می‌شود.

gdbبرای تولید اطلاعات اشکال‌زدایی که می‌تواند توسط اشکال‌زدای GNU C استفاده شود ، از سوئیچ زیر -ggdbبه صورت زیر استفاده کنید:

gcc example1.c -o example1 -ggdb

اکنون می‌توانیم با استفاده از gdb به اطلاعات اشکال‌زدایی دسترسی پیدا کنیم:

gdb example1

حالا بیایید در ابتدای برنامه یک نقطه توقف (breakpoint) وارد کنیم:

break main

اکنون می‌توانیم اشکال‌زدایی را با runدستور زیر شروع کنیم:

run

این دستور برنامه را اشکال‌زدایی کرده و اطلاعات اشکال‌زدایی تولید شده توسط GCC را نمایش می‌دهد:

Starting program: /home/didier/example1
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".

Breakpoint 1, main () at example1.c:3
۳          printf("Welcome to Novinhost Servers\n");
(gdb)

سپس می‌توانید با تایپ exitدستور در پوسته gdb از gdb خارج شوید.

نتیجه‌ گیری #

این آموزش به بررسی کامپایلر و نقش مهم GCC در توسعه نرم‌افزار پرداخت. ما یاد گرفتیم که چگونه GCC را روی اوبونتو ۲۲.۰۴ نصب کنیم، یک برنامه C را کامپایل کنیم، یک لیست اسمبلی ایجاد کنیم و اطلاعات اشکال‌زدایی را انجام دهیم

Updated on آبان ۲۰, ۱۴۰۴

نظر شما چیست؟!

  • Happy
  • Normal
  • Sad

Share This Article :

  • Facebook
  • X
  • LinkedIn
  • Pinterest
نصب جاوا در اوبونتونصب GitLab در اوبونتو

دیدگاهتان را بنویسید لغو پاسخ

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

فهرست مطلب
  • GCC چیست؟
  • چگونه از جی سی سی استفاده کنیم؟
  • پیش‌ نیازها
  • ۱. نحوه نصب GCC در اوبونتو ۲۲.۰۴
    • مرحله ۱: به‌روزرسانی فهرست بسته‌های اوبونتو
    • مرحله 2: نصب GCC روی اوبونتو
    • مرحله 3: نصب GCC را آزمایش کنید
  • ۲. نحوه کامپایل یک برنامه C
    • مرحله ۱: نوشتن یک برنامه ساده به زبان C
    • مرحله ۲: کامپایل example1.c با استفاده از GCC
    • مرحله ۳: ایجاد یک فهرست اسمبلی از برنامه C
    • مرحله ۴: تولید اطلاعات اشکال‌زدایی
  • نتیجه‌ گیری
نوین هاست

نوین هاست ارائه دهنده خدمات میزبانی، فروش انواع سرورهای مجازی و اختصاصی ایران و خارج برترین لوکیشن ها و استفاده از بهترین سخت افزارها با پشتیبانی 7/24

نماد اعتماد نوین هاست
لوگو ساماندهی
نظام صنفی رایانه ای کشور
دانش بنیان

دسترسی سریع

  • سرور مجازی
  • سرور مجازی ایران
  • سرور اختصاصی
  • هاست اشتراکی
  • ثبت دامنه
  • درباره ما
  • قوانین سرویس دهی

سرورهای مجازی

  • سرور مجازی المان
  • سرور مجازی فرانسه
  • سرور مجازی انگلیس
  • سرور مجازی امریکا
  • سرور مجازی کانادا
  • سرور مجازی فنلاند
  • سرور مجازی هلند

سرورهای اختصاصی

  • سرور اختصاصی ایران
  • سرور اختصاصی برج میلاد
  • سرور اختصاصی زیرساخت
  • سرور اختصاصی خارج
  • سرور اختصاصی آلمان
  • سرور اختصاصی فرانسه
  • سرور اختصاصی آمریکا
تمام حقوق این سایت محفوظ و متعلق به نوین هاست می باشد.
Facebook Twitter Youtube Whatsapp Instagram Telegram