PG_CONFIG(1) PostgreSQL 18.6 Documentation PG_CONFIG(1)

pg_config - دریافت اطلاعات درباره نسخه نصب‌شده PostgreSQL

pg_config [گزینه...]

ابزار pg_config پارامترهای پیکربندی نسخهٔ فعلی نصب‌شده از PostgreSQL را چاپ می‌کند. به عنوان مثال، این ابزار برای استفاده توسط بسته‌های نرم‌افزاری که می‌خواهند با PostgreSQL تعامل داشته باشند در نظر گرفته شده است تا یافتن فایل‌های سرآیند (header) و کتابخانه‌های مورد نیاز تسهیل شود.

برای استفاده از pg_config، یک یا چند مورد از گزینه‌های زیر را مشخص کنید:

--bindir

مکان فایل‌های اجرایی کاربر را چاپ می‌کند. برای نمونه از این گزینه برای یافتن برنامهٔ psql استفاده کنید. این معمولاً همان مکانی است که برنامهٔ pg_config نیز در آن قرار دارد.

--docdir

مکان فایل‌های مستندات را چاپ می‌کند.

--htmldir

مکان فایل‌های مستندات HTML را چاپ می‌کند.

--includedir

مکان فایل‌های سرآیند C برای رابط‌های کلاینت را چاپ می‌کند.

--pkgincludedir

مکان سایر فایل‌های سرآیند C را چاپ می‌کند.

--includedir-server

مکان فایل‌های سرآیند C را برای برنامه‌نویسی سمت سرور چاپ می‌کند.

--libdir

مکان کتابخانه‌های کد شیء (object code) را چاپ می‌کند.

--pkglibdir

مکان ماژول‌های با بارگذاری پویا، یا محلی که سرور در آن به جستجوی آن‌ها می‌پردازد را چاپ می‌کند. (سایر فایل‌های داده وابسته به معماری نیز ممکن است در این دایرکتوری نصب شده باشند.)

--localedir

مکان فایل‌های پشتیبانی محلی‌سازی (locale) را چاپ می‌کند. (اگر هنگام ساخت PostgreSQL پشتیبانی از locale پیکربندی نشده باشد، این مقدار یک رشته خالی خواهد بود.)

--mandir

مکان صفحات راهنما (manual pages) را چاپ می‌کند.

--sharedir

مکان فایل‌های پشتیبانی مستقل از معماری را چاپ می‌کند.

--sysconfdir

مکان فایل‌های پیکربندی سراسری سیستم را چاپ می‌کند.

--pgxs

مکان makefileهای افزونه را چاپ می‌کند.

--configure

گزینه‌هایی را که هنگام پیکربندی PostgreSQL برای ساخت، به اسکریپت configure داده شده بودند چاپ می‌کند. این گزینه می‌تواند برای بازتولید پیکربندی یکسان، یا فهمیدن اینکه یک بسته باینری با چه گزینه‌هایی ساخته شده است استفاده شود. (با این حال توجه داشته باشید که بسته‌های باینری اغلب حاوی وصله‌های سفارشی مخصوص توزیع‌کننده هستند.) همچنین مثال‌های زیر را ببینید.

--cc

مقدار متغیر CC را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این گزینه کامپایلر C استفاده‌شده را نشان می‌دهد.

--cppflags

مقدار متغیر CPPFLAGS را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این گزینه سوئیچ‌های کامپایلر C مورد نیاز در زمان پیش‌پردازش (معمولاً سوئیچ‌های -I) را نشان می‌دهد.

--cflags

مقدار متغیر CFLAGS را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این گزینه سوئیچ‌های کامپایلر C را نشان می‌دهد.

--cflags_sl

مقدار متغیر CFLAGS_SL را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این گزینه سوئیچ‌های اضافی کامپایلر C را که برای ساخت کتابخانه‌های اشتراکی استفاده شده‌اند نشان می‌دهد.

--ldflags

مقدار متغیر LDFLAGS را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این گزینه سوئیچ‌های پیونددهنده را نشان می‌دهد.

--ldflags_ex

مقدار متغیر LDFLAGS_EX را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این گزینه سوئیچ‌های پیونددهنده را که فقط برای ساخت فایل‌های اجرایی استفاده شده‌اند نشان می‌دهد.

--ldflags_sl

مقدار متغیر LDFLAGS_SL را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این گزینه سوئیچ‌های پیونددهنده را که فقط برای ساخت کتابخانه‌های اشتراکی استفاده شده‌اند نشان می‌دهد.

--libs

مقدار متغیر LIBS را که برای ساخت PostgreSQL استفاده شده است چاپ می‌کند. این متغیر معمولاً شامل سوئیچ‌های -l برای کتابخانه‌های خارجی پیوندشده به PostgreSQL است.

--version

نسخهٔ PostgreSQL را چاپ می‌کند.

-?
--help

راهنمایی درباره آرگومان‌های خط فرمان pg_config را نمایش داده و خارج می‌شود.
اگر بیش از یک گزینه مشخص شود، اطلاعات به همان ترتیب و در هر سطر یک مورد چاپ می‌شود. اگر هیچ گزینه‌ای داده نشود، تمامی اطلاعات موجود به همراه برچسب‌هایشان چاپ می‌شوند.

گزینه‌های --docdir، --pkgincludedir، --localedir، --mandir، --sharedir، --sysconfdir، --cc، --cppflags، --cflags، --cflags_sl، --ldflags، --ldflags_sl و --libs در PostgreSQL 8.1 اضافه شدند. گزینه --htmldir در PostgreSQL 8.4 اضافه شد. گزینه --ldflags_ex در PostgreSQL 9.0 اضافه شد.

برای بازتولید پیکربندی ساختِ نصب فعلی PostgreSQL، دستور زیر را اجرا کنید:

eval ./configure `pg_config --configure`

خروجی pg_config --configure حاوی علامت‌های نقل‌قول شل است تا آرگومان‌های دارای فاصله به درستی مشخص شوند. بنابراین، استفاده از eval برای دستیابی به نتایج صحیح الزامی است.

2026 PostgreSQL 18.6