SPDXTOOL(1) General Commands Manual SPDXTOOL(1)

spdxtool — ابزاری برای تولید سند سیاهه نرم‌افزاری (SBOM) با نمایهٔ SPDX Lite 3.0.1

spdxtool [options] module ...

spdxtool برنامه‌ای است که یک سیاههٔ نرم‌افزاری (SBOM) با قالب‌بندی JSON-LD تحت نمایهٔ SPDX Lite 3.0.1 برای مجموعه‌ای مشخص از ماژول‌های pkg-config تولید می‌کند. خروجی این ابزار می‌تواند در صورت نیاز به سایر قالب‌های SBOM تبدیل شود.

مستندات بیشتر دربارهٔ SPDX 3.0.1 را می‌توان در نشانی زیر یافت: https://spdx.github.io/spdx-spec/v3.0.1

options به شرح زیر هستند:

چاپ شمارهٔ نسخه، اعلان حق نشر و مجوز برنامهٔ spdxtool در خروجی استاندارد و خروج. بیشتر گزینه‌های دیگر و تمام آرگومان‌های خط فرمان نادیده گرفته می‌شوند.
چاپ شمارهٔ نسخهٔ برنامهٔ spdxtool در خروجی استاندارد و خروج. بیشتر گزینه‌های دیگر و تمام آرگومان‌های خط فرمان نادیده گرفته می‌شوند.
تنظیم ویژگی name در کلاس /Core/Agent. مقدار پیش‌فرض 'Default' است.
تنظیم ویژگی زمان ایجاد در کلاس /Core/CreationInfo. مستندات SPDX توصیه می‌کند از زمان با قالب‌بندی ISO 8601 استفاده شود که عبارت است از: YYYY-MM-DDThh:mm:ssZ. پیش‌فرض زمان ایجاد سند است. این گزینه بر متغیر محیطی SOURCE_DATE_EPOCH اولویت دارد.
تنظیم شناسهٔ ایجاد در کلاس /Core/CreationInfo. از آنجا که شناسه در اطلاعات ایجاد اغلب قالبی ویژه دارد، مقدار پیش‌فرض آن '_:creationinfo_1' است.
=varname=value
تعریف varname به‌عنوان value. متغیرها در خروجی پرس‌وجو استفاده می‌شوند و نتایج برخی ماژول‌ها ممکن است بر اساس وجود یک تعریف متغیر تغییر کند.

در صورت تنظیم، پیام‌های اشکال‌زدایی را در خروجی خطای استاندارد (stderr) چاپ می‌کند.
در صورت تنظیم، قواعد Conflicts را در ماژول‌ها نادیده می‌گیرد. اثری مشابه گزینهٔ --ignore-conflicts در pkgconf(1) دارد.
فهرستی از پوشه‌های با اولویت پایین جداشده با دو نقطه (:) که پرونده‌های pc(5) در آن‌ها جستجو می‌شوند. مسیر جستجوی ماژول با پیوست کردن این فهرست به PKG_CONFIG_PATH که اولویت بالاتری دارد ساخته می‌شود. اگر PKG_CONFIG_LIBDIR تعریف نشده باشد، فهرست پیش‌فرضی که از ماکروی پیش‌پردازندهٔ PKG_DEFAULT_PATH در برنامهٔ spdxtool کامپایل شده است، پیوست می‌شود. اگر PKG_CONFIG_LIBDIR تعریف شده باشد اما خالی باشد، چیزی پیوست نمی‌شود.
اعمال محدودیت بر عمق مجاز در گراف وابستگی.
فهرستی از پوشه‌های با اولویت بالا جداشده با دو نقطه (:) که پرونده‌های pc(5) در آن‌ها جستجو می‌شوند.
فهرستی از پرونده‌های pc(5) جداشده با دو نقطه (:) که پیش از هر پروندهٔ pkg-config دیگری بارگذاری می‌شوند. این بسته‌ها نسبت به هر پروندهٔ pc(5) دیگری که آن بسته را فراهم می‌کردند، بالاترین اولویت را دریافت می‌کنند.
در صورت تنظیم و عدم ارائهٔ گزینهٔ --creation-time، زمان ایجاد در کلاس /Core/CreationInfo به‌جای زمان فعلی از این برچسب زمان یونیکس (UNIX timestamp) مشتق می‌شود و امکان تولید تکرارپذیر SBOM را فراهم می‌سازد.

The spdxtool utility exits 0 on success, and >0 if an error occurs.

تولید یک SBOM برای بسته‌ای به نام foo:

$ spdxtool foo
{
,
@graph: [
{
type: Agent
,
creationInfo: _:creationinfo_1
, ,
name: Default
},
{
type: CreationInfo
,
@id: _:creationinfo_1
,
[...]

pc(5), pkgconf(1)

January 22, 2026 Linux 6.12.107+deb13-amd64