GObject Introspection یک منبع باز و نرم افزار کتابخانه آزادانه توزیع شده در C است و از زمین طراحی شده است تا برای توصیف API ها (رابط برنامه نویسی برنامه) و همچنین برای جمع آوری آنها در فرمت قابل خواندن و یکپارچه سازی دستگاه استفاده شود.
کتابخانه از یک فرمت فایل XML به نام GIR برای ارائه یک ساختار مشترک استفاده می کند که می تواند برای دسترسی به API کامل موجود صادر شده توسط یک کتابخانه یا هر واحد دیگر از کد استفاده شود. این کاملا به زبان برنامه نویسی C نوشته شده است.
شامل ابزارهای مختلف است
GObject Introspection با ابزارهای مختلفی عرضه می شود که می توان آن را g-ir-compile، یک کامپایلر typelib نامید که می تواند یک یا چند فایل GIR را به blobs typelib تبدیل کند؛ g-ir-generate، ژنراتور GIR که می تواند فایل های GIR را از نوع typobib بسازد؛ g-ir-scanner، یک ابزار تولید فایل های XML GIR است.
شروع به کار با GObject Introspection
نصب کتابخانه خودپرداز GObject در سیستم عامل گنو / لینوکس شما بسیار آسان است، همانطور که باید انجام دهید این است که مدیر بسته خود را باز کنید، جستجو برای & lsquo؛ gobject-introspection & rsquo؛ بسته بندی کنید و آن را با یک کلیک دوبار کلیک کنید.
اگر می خواهید برای اولین بار آن را برای معماری سخت افزار خود (32 بیت یا 64 بیتی در این زمان پشتیبانی کنید) یا سیستم عامل بهینه سازی کنید، آخرین نسخه از نرم افزار Softoware را دانلود کنید، جایی که آن را به عنوان توپی (TAR بایگانی)
آرشیو را در مکان انتخابی خود ذخیره کنید، آن را استخراج کنید، یک شبیه ساز ترمینال باز کنید و به محل فایل های بایگانی استخراج شده با استفاده از & lsquo؛ سی دی و رسیکا دستور (به عنوان مثال cd /home/softoware/gobject-introspection-1.42.0).
بهینه سازی و پیکربندی برنامه با اجرای & lsquo؛ ./ پیکربندی & rsquo؛ دستور، و سپس & lsquo؛ ایجاد & rsquo؛ فرمان برای تدوین GObject Introspection. در نهایت، با اجرای "sudo make install & rsquo؛ فرمان به عنوان یک کاربر منحصر به فرد یا & lsquo؛ ایجاد نصب & rsquo؛ فرمان به عنوان ریشه.
چه جدید در این نسخه است:
تغییرات:
به روز رسانی حاشیه نویسی وارد شده از GLib و نیاز به GLib 2.58
اطمینان حاصل کنید که G-I در macOS ایجاد می کند
یک آرگومان تبدیل به ابزارهای مبتنی بر پایتون اضافه کنید
اجازه انتخاب فرمت خروجی برای g-ir-doc-tool
قالب های ویژوال استودیو را بردارید
از Sphinx برای تولید اسناد کاربر استفاده کنید. gtk-doc هنوز هم برای مرجع API girepository-1.0 C نیاز است
پشتیبانی از تمام انواع _Float * C از ISO / IEC TS 18661-3: 2015
مسائل مربوط به gitlab.gnome.org حل شد
# 139 - بررسی برای gobject-introspection 1.44.0 در OS X 10.10.4 غیرفعال است
# 184 - پیش فرض عنصر نوع برای خواص شیء GByteArray تنظیم نشده است
# 189 -c: اطلاعات مربوط به اشارهگر / آرایه در GIR برای پارامترهای آرایه C را تایپ کنید
# 134 - اجازه دادن به چند فرمت خروجی
# 218 - gtk2 کد غیر قابل دسترس پس از فعال کردن -Wswitch به طور پیش فرض
# 113 - نشت حافظه در رگرسیون GI و آزمون marshalling آزمون تنظیم اموال
اشکالات در bugzilla.gnome.org حل شد
# 702788 - DLL girepository در حال بدست آوردن اشاره گرها در ویندوز / x64 است
چه جدید در نسخه 1.56.1 است:
تغییرات:
_Float128 را به انواع پایه C اضافه کنید
به روز رسانی حاشیه نویسی وارد شده از GLib و نیاز به GLib 2.56
مسائل مربوط به gitlab.gnome.org حل شد
# 173 - نمیتواند پارامترهای پرچم را تجزیه کند
# 175 - نویسنده: شامل اسناد و موقعیت نماد در فایل های منبع است
# 120 - اضافه کردن اشیاء subdir به AM_INIT_AUTOMAKE
# 190 - سازنده const از c: type بر (نوع نام فایل) پارامترها کاهش یافته است
# 188 - giscanner: "هشدارهای N را نفی نکنید" & quot؛ اگر --quiet مشخص شد
اشکالات در bugzilla.gnome.org حل شد
# 764791 - gitypelib.c: افزایش #define MAX_NAME_LEN از 200 تا 255
# 756921 - g-ir-scanner _Thread_local را نمی شناسد
# 791991 - مقدار ارزش کتابخانه به اشتراک گذاشته شده در فایل های gir در * BSD زمانی که builddir شامل نام کتابخانه
# 791902 - ساختمان با استفاده از غیر libtool (به عنوان مثال، meson) در MinGW
# 629667 - MY_ENUM_VALUE = فقط برای آخرین عضو کار می کند
# 699354 - صفحه man-g-ir-compiler برای - به اشتراک گذاشته شده توسط کتابخانه اشتباه می گوید & quot؛ lib & quot؛ و & quot؛ و بنابراین & quot؛ باید حذف شود
# 761985 - os.name می تواند در برخی از زمینه ها اشتباه باشد
# 699328 - GI_TYPELIB_PATH مستند نشده است
نظر یافت نشد