تجربه ی زیبای من در مورد کامپایل برنامه های c در لینوکس البته همراه با مثال

by pesarkhobeee on ۳۰/۰۱/۱۳۸۸

چند روز پیش تو دانشگاه که از یکی از کلاسام بیرون اومدم ، یکی از دوستانو دیدم که گفت داره میره آز سیستم عاملشون. منم که گشته مرده چیزای عملی گفتم من که تازه دارم سیستم عامل میخونم بزار چتر بشم کلاس اینا یه حالی ببرم!!!

خلاصه اینکه چیزی که یاد گرفتم برنامه نویسی با زبان سی در سیستم عامل لینوکس و کامپایل اون بود!

گفتم بیام تجربمو با شما شریک شم.


اول با یه ادیتور مثل gedit یه فایل با پسوند .c تو پوشه home بسازید مثلا به عنوان اولین مثال یه فایلی با نام hello.c ساختم و کد زیرو توش نوشتم:

#include

#include

#include

int main()

}

printf (“Hello Linux \n”);

return 0;

{

خوب برای کامپایل کردنش کافیه تو ترمینا یا همون خط فرمان بنویسید:

gcc file name.c –o filename

یعنی:

Gcc hello.c –o hello

خوب این کد توسط کامپایلر gcc فایل به نام hello.c رو کامپایل میکنه و کلید –o hello میگه که یه فایل اجرایی به نام hello بساز

و برای اجراش هم کافیه تو خط فرمان بزنید:

./hello

شاید بگید بابا اینم برنامه بود نشون دادی؟خیلی بچه بازیه!!!

خوب پس بیایید یه برنامه چند نخی هلو بنویسیم !

#include

#include

void* print_xs (void* unused)

}

while (1)

fputc (‘x’, stderr);

return NULL;

{

int main()

{

pthread_t thread_id;

pthread_create (&thread_id, NULL, &print_xs, NULL);

while (1)

fputc (‘o’, stderr);

return 0;

}

خوب کافیه این دستوراتو در یک فایل ذخیره کنید و همون مراحل قبلو برای کامپایلش برید فقط چون این برنامه از توابع خاصی برای اعمای چند نخی استفاده میکنه باید موقع کامپایل کتابخونه ی مخصوص این توابع رو معرفی کنید پس از دستور زیر استفاده میکنیم:

Gcc Filename.c –o Filename -lpthread

امید وارم مفید بوده باشه ((اخه خودم همیشه دنبال دیدن و اجرا کردن برنامه هام رو لینوکس بودم ;-)))

[email protected]

There are 2 comments in this article:

  1. ۳۰/۰۱/۱۳۸۸مهدی says:

    سلام فرید جان!
    خیلی با این نکته ریز به من حال دادی!!!
    نمی‌دونی چقدر اینو لازم داشتم. همین امروز ظهر خیال داشتم بگردم دنبالش که رو حساب تنبلی بی خیال شدم و الان برای چندمین بار بهترین نتیجه رو از تنبلی گرفتم.
    در ضمن سیمی کالن‌ها و دابل کوتیشن‌ها توی کدی که نوشتی مشکل دارن. اینو واسه تنبلایی گفتم که مثل من کدها رو کپی و پیست می‌کنند!!! D:

    راستی شما هم که همکارین؟ رشتتون چیه؟ کدوم دانشگاه؟ ترم چند؟ (احتمالاْ ۴)

  2. ۳۰/۰۱/۱۳۸۸فرید says:

    و علیکم السلام مهدی جان
    شرمنده مهدی جان از بابت سیمی کالن ها و دابل کوتیشن ها از بدی های هولهلکی کپی کردنه دیگه . ایشالله از دفعه بعد فایلشم میزارم زحمت کپی پیستم نکشین ;-))
    تقریبا هم همکارم و هم هم رشته که در یکی از این دانشگاههای بی صحاب ازاد در حال تفریح و هدر دادن وقتم هستم
    خدا به هممون پشت کار و عقل و دانش کافی عطا کنه و اخروعاقبتمونو بخیر کنه
    انشاالله

Write a comment: