ال‌سی‌سی (کامپایلر)

کامپایلر LCC ("کامپایلر محلی C" یا "کامپایلر کوچک C") یک کامپایلر کوچک و قابل تعویض هدف برای زبان برنامه نویسی ANSI C است. اگرچه کد منبع آن در سطح استفاده شخصی  بدون در دسترس است،  اما طبق تعاریف رایج، این کامپایلر منبع باز یا یک نرم افزار مجانی نیست زیرا ممکن است محصولاتی که از LCC مشتق می شوند به فروش نرسند ، اگرچه ممکن است اجزای تولید شده از LCC به فروش برسند. این کامپایلر توسط کریس فرازر و دیوید هانسون ساخته شده است.

LCC 
LCC به قصد معتبرو آسان فهم بودن ساخته شده و طراحی آن در کتاب فرایرز و هانسون به نام "یک کامپایلر قابل انتقال برای C: طراحی و پیاده سازی" به طور کامل شرح داده شده است. این کتاب شامل اکثر کد های منبع نسخه ی 3.6 این کامپایلر است  که به عنوان یک برنامه ی کامپیوتری که که شامل توضیحی از منطق زبان طبیعی اش است و از noweb  استفاده می کند، نوشته شده است. با اینکه در جولای سال 2011 نسخه ی 4.2  آن به بازار آمده ، با این حال بیشتر کتاب ها کماکان از نسخه ی 3.6  استفاده می کنند. بزرگترین تغییر از زمان انتشار این کتاب ، رابط مولد کد آن است که در یک سند جداگانه توضیح داده شده است. 

کد منبع این کامپایلر حدود 20000 خط است که بسیار کمتر نسبت به کد خیلی از کامپایلر های اصلی است.  

LCC می تواند برای پردازنده های مختلفی مانند  Alpha ، SPARC ، MIPS و x86 کد تولید کند. همچنین یک LCC وجود دارد کهزبان واسط رایج ماکروسافت  مایکروسافت را تولید می کند.

پروژه های ترکیبی با LCC

زلزله 3 
شناسه نرم افزار ، شناسه فناوری 3 موتوره متکی به یک نسخه اصلاح شده از LCC است  که کد منبع  هر یک از ماژول بازی و یا اصلاح شخص ثالث ( در بازی های کامپیوتری) را به به بایت کد  با هدف قرار دادن آن در  ماشین مجازی ، کامپایل می کند.  این بدان معنی است که ماژول ها از فراخوانی های سیستمی و محدوده فایل سیستم ارائه شده توسط موتور ، بی خبر هستند، که به منظور کاهش تهدید ایجاد شده توسط نویسندگان مخرب است. نکته دیگر این است که بازی ها و اصلاحات نوشته شده برای موتور قابل حمل و بدون جبران هستند. تنها نیازاست ماشین مجازی به منظور اجرای ماژول ها  ، به سیستم عامل های جدید منتقل شود.

LCC  برنده 
lcc-win32 یک بسته محیط توسعه یکپارچه برای مایکروسافت ویندوز است که شامل یک کپی از کد منبع  LCC است. یک همتای amd64 با نام lcc-win64 وجود دارد ، که از تاریخ 15 آوریل 2012 در دسترس است.

Pelles C 
کامپایلر Pelles C یک نسخه ی اصلاح شده از LCC است که از C11 ، amd64 و دیگر تکنیک های بهینه سازی مانند گسترش درون خطی  پشتیبانی می کند.

کارهای ریاضی 
برای دستگاه های ویندوز 32 بیتی ،  در صورتی که هیچ کامپایلر دیگری برای MathWorks MATLAB و محصولات مرتبط  آن نصب نشده باشد ،LCC  به صورت پیش فرض استفاده می شود.

مجوز 
LCC  برای استفاده ی شخصی مجانی است و ممکن است اگر تمام واسط های توزیع و مستند سازی محصول آن را تایید کنند ، دوباره توزیع شود. مجوز LCC به مثال هایی در موارد متعددی متکی است. LCC ممکن است اگر به تنهایی فروخته شود سودی نداشته باشد اما ممکن است به نرم افزار های دیگری که برای سود دهی فروخته می شوند ، اضافه شود ؛ در صورتی که خود LCC به صورت ایگان توزیع شده باشد. هر کاربر و مجوز های استفاده ی نا محدود به وسیله ی ارتباط با Addison-Wesley در دسترس است ، به ویژه برای کامپایلر زبان هایی مانند ++C که یک کامپایلر C می تواند بخش اعظم کار آن را تشکیل دهد.

همچنین ببینید 
MinGW64/MSYS2 ، یک درگاه GCC برای Win32/64 ، کامپایلر منبع باز ، به علاوه ی سیستم ساخت GNU و بسیاری از پوسته ی ابزار ها و کتابخانه ها و پکیج های از پیش کامپایل شده.

منابع

کتابشناسی - فهرست کتب 

 
کامپایلرهای سی