Weitere ähnliche Inhalte Ähnlich wie Configure hh-fa-ver0.1.0 (20) Configure hh-fa-ver0.1.02. مندرجات فهرست
چکیده.......................................................................................................................................................................................................۳
ها واژه کلید..............................................................................................................................................................................................۳
۱مقدمه.....................................................................................................................................................................................................۳
۲گذشته تحقیقات و مطالعات بررسی....................................................................................................................................................۶
۳کار انجام روش......................................................................................................................................................................................۶
۴نتایج.......................................................................................................................................................................................................۷
۵کار ادامه جهت نیاز مورد زمانبندی.....................................................................................................................................................۷
۶منابع.......................................................................................................................................................................................................۷
تصاوير فهرست
تصویر۱تصویر ارجاع از اینمونه :.............................................................................................................................................................۴
تصویر۲دوم تصویر نمونه :.........................................................................................................................................................................۵
جداول فهرست
جدول۱جدول نمونه :..................................................................................................................................................................................۵
جدول۲دوم جدول نمونه :..........................................................................................................................................................................۵
۲
3. چکیده
?ل?فایی ?اد?ایچی ?وه?نحی ?یرح?ش ?ه?ب ?تند?مس ?ن?ای درconfigureوMakefile?الب?ق و?ای?ه ?ل?فای
configure.acوMakefile.am.پردازیم می
ها واژه کلید
Automake, autoconf, configure, Makefile
۱مقدمه
Autoconfتولید برای ابزاریستscript6ور6بط را 6زار6اف نرم کد های بسته که پوسته های6ه6ب 6ار6خودک
مشابه های سامانه از کثیری انواع با انطباق منظورunixنماید می پیکربندی
Scriptتوسط شده تولید پیکربندی هایAutoconfاز 6تقل6مس 6را6اچ 6ام6هنگ درAutoconf6ابراین6بن 6وده6ب
داشتن به نیازی کاربرانAutoconf.ندارند
Scriptبه نیازی معمول بطور همچنین و ندارند کاربر با تعامل به نیازی اجرا هنگام در شده تولید پیکربندی های
6از6نی 6ورد6م 6هیلت6تس از 6ک6هری وجود بررسی به ها آن .ندارند را ها آرگومان طریق از سامانه نوع کردن مشخص
.پردازند می افزاری نرم بسته
Scriptشده تولید پیکربندی هایconfigureاجرا هنگام در .شوند می نامیدهconfigure6ی6م ایجاد فایل چندین
6ط6توس 6ده6ش 6اد6ایج 6ای6ه 6ل6فای .6د6نمای می جایگزین منسبشان مقادیر با را پیکربندی پارامترهای و کندconfigure
:از عبارتند
فایل چند یا یکMakefileفایل یک زیرشاخه هر ازای به ،
فایل یکC Header6ای6راهنماه 6ده6بردارن در و 6ت6اس 6م6تنظی 6ل6قاب آن 6ام6ن 6ه6ک اختیاری بطورdefine66ی6م #
.باشد
یکscriptنام به پوستهconfig.status.کند می ایجاد دوباره را بال در شده لیست های فایل اجرا هنگام در که
۳
4. یکscriptنام به پوستهconfig.cache.کند می ذخیره را ها بررسی نتایج که
نام به فایل یکconfig.log.هاست مترجم توسط شده تولید های پیغام بردارنده در که
6اخت6س 6ت6جهscript6ط6توس 6دی6پیکربنAutoconf6ام6ن 6ه6ب ورودی 6ل6فای 6ه6ک 6ت6اس لزمconfigure.in6ا6ی
configure.acو کرده ایجادAutoconf6ا6ب آنچه تامین جهت است ممکن .نمایید اجرا آن روی بر راAutoconf6ی6م
6ای6ه فایل است ممکن همچنین ،بنویسید تسهیلتی های بررسی آیدaclocal.m4وacsite.m4از 6ر6اگ .6ید6بنویس را
فایلC Header6ت6اس ممکن کنید می استفادهacconfig.h6ل6فای و 6ید6بنویس راconfig.h.in6ط6توس 6ده6ش 6د6تولی
Autoconf.نمایید توزیع افزاری نرم بسته همراه به را
۲فایل نوستنconfigure.in
تولید جهتconfigure scriptنام به فایلی افزاری نرم بسته برایconfigure.in6ای6ماکروه 6ده6بردارن در 6ه6ک
Autoconf6ی6م 6ا6ی افزاریست نرم بسته نیاز مورد که سامانه تسهیلت بررسی ماکروها این .نمایید ایجاد را باشد می
.دهند می انجام را کند استفاده ها آن از تواند
در ماکروها فراخوانی ترتیبconfigure.inتمامی .استثنا چند با مگر ندارند اهمیتیconfigure.inش66امل باید ها
ماکرو فراخوانیAC_INIT6اکرو6م 6وانی6فراخ 6ن6همچنی و 6ند6باش ها بررسی از قبلAC_OUTPUTبعلوه .6ا6انته در
6ایی6متغیره از 6ی6برخ مقادیر ها آن زیرا ضوند فراخوانی ها آن از پیش ماکروها دیگر تا دارند لزم ماکروها از بعضی
.کنند می بررسی گیری تصمسم جهت را اند شده تنظیم قبل از که
:است آمده ماکروها فراخوانی برای پیشنهادی ترتیب ادامه در
AC_INIT(file)
checks for programs
checks for libraries
checks for header files
checks for typedefs
۴
5. checks for structures
checks for compiler characteristics
checks for library functions
checks for system services
AC_OUTPUT([file...])
۳از استفادهautoscanایجاد جهتconfigur.scan
برنامهautoscanفایل ایجاد در شما تواند میconfigure.in.نماید یاری افزاری نرم بسته برایAutoscanفایل
6یر6مس 6رض6ف پیش بطور ویا است شده داده آن به آرگومان عنوان به یا ریشه که ها شاخه درختی ساختار کد های
فای6ل و 6د6کن 6ی6م 6تجو6جس پ6ذیری 6ال6انتق مس6ایل را ک6د 6ای6ه فای6ل 6امه6برن ای6ن .کن6د 6ی6م امتحان را جاریست
configure.scanفایل اولیه شالوده کهconfigure.in.کند می ایجاد را است بسته برای
فایل نام تغییر از قبلconfigure.scanبهconfigure.inبه نیاز دارد احتمال زیرا کنید امتحان را آن دستی بطور
معمول .باشد داشته تنظیمات برخیautoscanمی ایجاد غلط ترتیب با را است دیگر ماکروی با مرتبط که ماکرویی
شود می باعث که کندautoconfپیکربندی سرآنید فایل ار بسته که بخواهید شما اگر همچنین .دهد عشدار شما به
فراخوانی باید شما ،کند استفادهAC_CONFIG_HEADER.کنید اضافه آن به را
۴از استفادهautoconfایجاد جهتconfigure
ایجاد جهتconfigureازconfigure.inبرنامهautoconf.6د6نمایی اجرا آرگومانی هیچ بدون راAutoconf6ل6فای
configure.inماکروهای از استفاده با راm46ه6ب آرگومانی اگر .کند می پردازشautoconf6دن6خوان 6ای6بج 6د6بدهی
فایلconfigure.inو خواند می را آرگومان عنوان به شده داده فایلscript6ل6فای در 6تن6نوش 6ای6بج را 6دی6پیکربن
configure.دهد می نمایش استاندارد خروجی در
۵واقعی پروژه یک
۵
6. شاخه واردpvm:نمایید ایجاد را ذیل های فایل و شده
AUTHORS, COPYING, ChangeLog, Makefile.am, NEWS, README, autogen.sh, configure.acو
زیرشاخهm4
برنامهautoscanفایل برنامه اجرای پایان از پس .نمایید اجرا راconfigure.scan6ه6ب را آن ،اس66ت ش66ده ایجاد
configure.ac.نمایید باز ویرایش جهت را آن سپس و داده نام تغییر
AC_PREREQ([2.63])
AC_INIT(pvm, 0.1.0, pvm@pdnsoft.com)
AC_CONFIG_SRCDIR(sball/sballd.cpp)
AC_CONFIG_HEADERS([config.h])
.دهند می انجام را ان را سازی آماده و اولیه کارهای و هستند ثابتی کدهای بیش و کم فوق خطوط
AM_INIT_AUTOMAKE
بال خطautomake.سازد می آماده استفاده جهت
AC_PROG_CXX
مترجم پشتیبانی خط اینC.سازد می فعال را ++
LT_INIT([disable-static])
.سازد می غیرفعال را ایستا های کتابخانه ایجاد خط این
AC_PROG_LIBTOOL
پشتیبانیlibtool.سازد می فقال پویا های کتابخانه ایجاد جهت
PKG_CHECK_MODULES([UUID], [uuid])
بسته وجودuuid6ی6محیط متغیرهای وجودد ضورت در و کرده بررسی راUUID_CFLAGSوUUID_LIBSرا
.کند می تعریف
AC_CHECK_LIB([cpg], [cpg_model_initialize])
۶
7. کتابخانه وجودlibcpg.so.کند می بررسی را
AC_CHECK_HEADERS([fcntl.h stdlib.h string.h sys/file.h sys/socket.h ...
.کند می بررسی را سرآیند های فایل وجود
AC_SUBST([LIBPUTIL_SO_VERSION], [1:0:0])
محیطی متغیرLIBPUTIL_SO_VERSION.کند می تعریف را
AC_OUTPUT(Makefile putil/Makefile sball/Makefile)
های فایل فوق عملیات موفقیت صورت درMakefile.کند می ایجاد را
نام ته فایلیautogen.shنمایید اضافه بدان را زیر خطوط و نمایید ایجاد
#!/bin/sh
autoreconf --force --install
rm -rf autom4te*.cache
برنامهautoreconfفایل شود می باعثconfigureشاخه درون به نیاز مورد های فایل و گردد ایجاد دوباره
.گردد اتقال هپرو
نام به فایلی پروژه اصلی شاخه درMakefile.am:نمایید اضافه بدان را زیر خطوط و نمایید ایجاد
ACLOCAL_AMFLAGS = -I m4
بهautoconfشاخه گوید میm4.کند جستجو اضافی ماکروهای یافتن جهت را
SUBDIRS = . putil sball
فایل دربردارنده که هایی زیرشاخه نامMakefile.am.گردد می ذکر هستند
EXTRA_DIST = autogen.sh
بهautomakeفایل گوید میautogen.sh.دهد قرار توزیع آرشیو در را
۷
8. شاخه درputilفایلMakefile.am:نمایید اضافه بدان را زیر خطوط و کرده ایجاد را
AM_CPPFLAGS= -I../include -I../include/putil $(LIBXMLXX_CFLAGS)
.کند می مشخص را پردازنده پیش و مترجم برای دیگر متفرقه تنظیمات و سرآیند های فایل جستجو شاخه
lib_LTLIBRARIES= libputil.la
.کند می مشخص را خروجی های کتابخانه یا کتابخانه نام
libputil_la_SOURCES= daemon.cpp sysmonitor.cpp exception.cpp logs.cpp
کتابخانه کد های فایلlibputil.کند می مشخص را
libputil_la_LDFLAGS= -version-info $(LIBPUTIL_SO_VERSION)
.کند می مشخص را دهنده پیوند تنظیمات
شاخه درsballفایلMakefile.am:نمایید اضافه بدان را زیر خطوط و کرده ایجاد را
AM_CPPFLAGS= -I../include -I../include/putil -I../include/sball
$(LIBXMLXX_CFLAGS)
lib_LTLIBRARIES= libpnm.la libpmm.la
libpnm_la_SOURCES= cpg.cpp nm.cpp
libpnm_la_LDFLAGS= -version-info $(LIBPNM_SO_VERSION)
-Wl,--rpath -Wl,../putil/.libs
libpnm_la_LIBADD= -L../putil/.libs -lputil
libpmm_la_SOURCES= mm.cpp
libpmm_la_LDFLAGS= -version-info $(LIBPMM_SO_VERSION)
۸
9. -Wl,--rpath -Wl,../putil/.lib
-Wl,--rpath -Wl,../putil/.libss
libpmm_la_LIBADD= -L../putil/.libs -lputil
فایل همانندMakefile.amشاخه درputilهای نام به کتابخانه دو اینجا در که تفاوت این با باشد میlibpmmو
libpnm.گردند می ایجاد
bin_PROGRAMS= sballd
خروجی اجرایی فایل نام
sballd_SOURCES= ../glbparams.cpp sballd.cpp
برنامه کد های فایل
sballd_LDFALGS= -Wl,--rpath -Wl,../putil/.libs -Wl,--rpath -Wl,.
دهنده پیوند تنظیمات
sballd_LDADD= -L../putil/.libs -lputil -L.libs -lpnm -lpmm $(LIBXMLXX_LIBS)
ها کتابخانه جستجو شاخه
اصلی شاخه در را زیر دستورات ،است آماده چیز همه اکنونpvm:نمایید اجرا
./autogen.sh
./configure
make
۲منابع
1. [http://www.nondot.org/sabre/Mirrored/autoconf-2.12/autoconf_1.html]
2. [http://www.nondot.org/sabre/Mirrored/autoconf-2.12/autoconf_2.html]
۹