I would love to change the world, but they won’t give me the source code

نوشته های برچسب شده ‘سورس’

سورس هسته لینوکس

In برنامه نویسی, لينوکس on اکتبر 26, 2008 at 8:44 ب.ظ

یه تحلیل جالب از تعداد خط های سورس لینوکس؛

لینوکس (هسته) دارای ۶.۳۹۹.۱۹۱ خط برنامه نویسی می باشد. ۹۶.۴٪ با زبان C و ۳.۳٪ با اسمبلی.

واقعا محشره.

پ.ن. : این نکته رو هم اشاره کنم که اصولا خود لینوکس چیزی جز هسته نیست؛ و با ترکیب شدنش با نرم افزارهای دیگه یک سیستم عامل کامل میسازه که به اختصار لینوکس می گوییند. (این نکته رو برا این گفتم که در تیتر پست زدم «سورس هسته لینوکس» برای کاربران که اشتباه نکنن!)

کامپایل سورس پکیج ها در لینوکس/یونیکس

In لينوکس, يونيکس on اکتبر 2, 2008 at 3:09 ق.ظ

معمولا اکثر کاربران برای نصب نرم افزارهای مختلف در لینوکس یا یونیکس خودشون از پکیج های اماده استفاده میکنن که به اونها pre-compiled package می گوییم. در حقیقت این فایل ها قبلن کامپایل شدن و به یک فایل فرمت اماده نصب rpm یا deb تبدیل شد. (فایل فرمت های اماده دیگری هم داریم مثل tbz که برای FreeBSD هست یا tgz برای OpenBSD). این فایل ها باینری گفته میشوند.

اما اگر لازم داشتید که نرم افزاری را دستی کامپایل و نصب کنید باید مراحل زیر رو انجام بدید:

اول مطمئن شوید که کامپایلر کدهای سی و لایبرری یا همون کتابخونه اون نصب باشه؛ که کم پیش میاد نصب نباشه.

بعد فایل سورس اون نرم افزار رو که معمولا به فرم زیپ شده tar, tgz, bz2 و غیره میاد رو باز کنید. در محیط گرافیکی راست کلیک کنید و Extract رو بزنید. در محیط ترمینال از فرمان های زیر استفاده کنید:

tar -xf xxx.tar

tar -xzf xxx.tgz

tar -xzf xxx.tar.gz

bzip2 -d xxx.bz2

از اینجا به بعد رو در ترمینال یا همان کونسول انجام میدیم.. با فرمان cd وارد دایرکتوری زیپ باز شده اون نرم افزار بشوید

حالا قبل از شروع مراحل کامپایل و نصب، یک عمل مفید رو می تونید انجام بدید و اون چک کردن پارامترها و اپشن های نصب اون پکیج هست. اینجوری بجای اینکه حالت پیش فرض رو نصب کنید، این فرصت رو دارید که همه پارامترها رو ببیند و اونهایی رو که لازم دارید ولی در حالت نرمال فعال نیستن رو دستی هنگام نصب وارد کنید. پس این فرمان رو ابتدا اجرا کنید:

configure –help/.

و لیستی از تمامی اپشن ها رو می بینید. حالا اصل کار رو شروع می کنیم؛ ابتدا

configure + optional parameter/.

مثلا

configure –with-xml2=/usr/lib/xml2/.

اگر این مرحله بدون اشتباه و یا مشکلی تمام شد، فرمان بعدی رو اجرا کنید. اگر به پیام error برخوردید فایل config.log رو در همانجا باز کنید، مشکل رو حل کنید و دوباره فرمان قبلی رو اجرا کنید. بعد از اون فرمان make رو در لینوکس و gmake رو در FreeBSD اجرا کنید.

بعد از پایان این مرحله که در حقیقت نرم افزار از سورس به باینری یا زبان کد ماشین تبدیل میشه، فرمان اخر رو اجرا کنید؛ البته برای این فرمان باید از کاربر مدیر یا همان root استفاده کنید.

make install    => GNU Linux

gmake install  => FreeBSD UNIX

به این صورت شما نرم افزار مورد نظر رو دستی و از سورس نصب کردید.

اگر مشکلی داشتید به من ایمیل بزنید یا کامنت بذارید تا من تا جایی که دانشم برسه کمک کنم.

مرسی از وقتی که گذاشتید و امیدوارم به دردتون بخوره.

امید