بررسی درخت منبع
باز کردن بسته بندی فایل tar منجر به ایجاد یک دایرکتوری جدید به نام می شود دیکشنری-1.11. این فهرست شامل درخت منبع است. بیایید به داخل نگاه کنیم:
[me@linuxbox src]$ سی دی دیکشنری-1.11
[me@linuxbox diction-1.11]$ ls
[me@linuxbox src]$ سی دی دیکشنری-1.11
[me@linuxbox diction-1.11]$ ls
config.guess diction.c
config.h.in diction.pot config.sub diction.spec configure diction.spec.in configure.in diction.texi.in COPYING en
de en_GB
de.po en_GB.po diction.1.in getopt1.c
getopt.c
getopt.h getopt_int.h نصب
install-sh Makefile.in misc.c misc.h NEWS
nl
nl.po README
جمله.c جمله.h style.1.in style.c test
config.guess diction.c
config.h.in diction.pot config.sub diction.spec configure diction.spec.in configure.in diction.texi.in COPYING en
de en_GB
de.po en_GB.po diction.1.in getopt1.c
در آن تعدادی فایل را مشاهده می کنیم. برنامههای متعلق به پروژه گنو، و همچنین بسیاری دیگر، فایلهای مستندات را تامین خواهند کرد README, نصب, اخبارو کپی برداری. این فایل ها حاوی توضیحات برنامه، اطلاعاتی در مورد نحوه ساخت و نصب آن و شرایط مجوز آن است. همیشه خوب است که آن را با دقت بخوانید README و نصب قبل از تلاش برای ساختن برنامه، فایل ها.
فایل های جالب دیگر در این دایرکتوری همان هایی هستند که به آنها ختم می شود .c و .h:
[me@linuxbox diction-1.11]$ ls * .c
diction.c getopt1.c getopt.c misc.c جمله.c style.c [me@linuxbox diction-1.11]$ ls *.h
getopt.h getopt_int.h misc.h جمله.h
[me@linuxbox diction-1.11]$ ls * .c
diction.c getopt1.c getopt.c misc.c جمله.c style.c [me@linuxbox diction-1.11]$ ls *.h
getopt.h getopt_int.h misc.h جمله.h
La .c فایل ها شامل دو برنامه C ارائه شده توسط بسته (سبک و دیکشنری)، به ماژول ها تقسیم شده است. این یک روش معمول است که برنامه های بزرگ به قطعات کوچکتر تقسیم شوند که مدیریت آنها آسان تر است. فایل های کد منبع متنی معمولی هستند و می توان با آن ها را بررسی کرد کمتر:
[me@linuxbox diction-1.11]$ دیکشنری کمتر.ج
[me@linuxbox diction-1.11]$ دیکشنری کمتر.ج
La .h فایل ها به عنوان شناخته می شوند فایل های هدر. اینها هم متن معمولی هستند. فایلهای سرصفحه حاوی توضیحاتی از روالهای موجود در فایل کد منبع یا کتابخانه هستند. برای اینکه کامپایلر بتواند ماژول ها را به هم متصل کند، باید شرحی از تمام ماژول های مورد نیاز برای تکمیل کل برنامه را دریافت کند. نزدیک به ابتدای دیکشنری.ج فایل، این خط را می بینیم:
#include "getopt.h"
#include "getopt.h"
این به کامپایلر دستور می دهد تا فایل را بخواند getopt.h همانطور که کد منبع را در آن می خواند دیکشنری.ج به منظور "دانستن" آنچه در getopt.c. getopt.c فایل روتین هایی را تامین می کند که توسط هر دو به اشتراک گذاشته شده است سبک و داستانی برنامه ها.
بالای شامل بیانیه برای getopt.h، برخی دیگر را می بینیم شامل جملاتی از این قبیل:
#عبارتند از
#عبارتند از
#عبارتند از
#عبارتند از
#عبارتند از
#عبارتند از
#عبارتند از
#عبارتند از
#عبارتند از
#عبارتند از
اینها همچنین به فایلهای هدر اشاره میکنند، اما به فایلهای هدر اشاره میکنند که خارج از درخت منبع فعلی زندگی میکنند. آنها توسط سیستم برای پشتیبانی از کامپایل هر برنامه ارائه می شوند. اگر به داخل نگاه کنیم / usr / شامل، می توانیم آنها را ببینیم:
[me@linuxbox diction-1.11]$ ls /usr/include
[me@linuxbox diction-1.11]$ ls /usr/include
فایل های هدر در این دایرکتوری زمانی که ما کامپایلر را نصب کردیم، نصب شدند.