| CRYSTAL(1) | Crystal Compiler Command Line Reference Guide | CRYSTAL(1) |
نام (NAME)
crystal - کامپایلر زبان کریستال (Crystal)
خلاصه دستور (SYNOPSIS)
crystal دستور [سوییچها] فایل_برنامه — [آرگومانها]
توضیحات (DESCRIPTION)
کریستال (Crystal) یک زبان برنامهنویسی با بررسی نوع ایستا (Statically type-checked) است. این زبان با در نظر گرفتن زیبایی زبان روبی (Ruby) و کارایی زبان C طراحی و ساخته شده است.
نحوه استفاده (USAGE)
میتوانید با فراخوانی کامپایلر به همراه نام یک فایل، برنامه را کامپایل کرده و اجرا کنید:
crystal some_program.cr
فایلهای کریستال معمولاً با پسوند .cr خاتمه مییابند، هرچند این موضوع اجباری نیست.
همچنین میتوانید از دستور run استفاده کنید:
crystal run some_program.cr
برای ساخت یک فایل اجرایی از دستور build استفاده کنید:
crystal build some_program.cr
این کار یک فایل اجرایی به نام "some_program" ایجاد میکند.
توجه داشته باشید که فایلهای اجرایی تولیدشده به صورت پیشفرض کاملاً بهینهسازی نشدهاند. برای فعال کردن بهینهسازیها، از پرچم --release استفاده کنید:
crystal build --release some_program.cr
حتماً همیشه برای فایلهای اجرایی آماده محیط عملیاتی و هنگام اجرای بنچمارکها از --release استفاده کنید.
بهینهسازیها به صورت پیشفرض فعال نیستند زیرا زمان کامپایل بدون آنها بسیار سریعتر است و کارایی برنامه بدون آنها نیز همچنان بسیار خوب است؛ بنابراین این امکان را میدهد که از دستور crystal تقریباً به گونهای استفاده شود که گویی یک مفسر است.
دستورات کریستال (CRYSTAL COMMANDS)
دستورات اصلی (Main commands)
crystal-clear_cache
crystal-help
crystal-version
ابزارها (Tools)
crystal-tool-context
crystal-tool-expand
crystal-tool-flags
crystal-tool-hierarchy
crystal-tool-implementations
crystal-tool-macro_code_coverage
crystal-tool-types
بهینهسازیها (OPTIMIZATIONS)
سطح بهینهسازی، میزان تلاش تولید کد (Codegen) برای تولید کد بهینه را مشخص میکند. این یک تعادل میان کارایی کامپایل (که با هر سطح بهینهسازی کاهش مییابد) و کارایی زمان اجرا (که با هر سطح بهینهسازی افزایش مییابد) است.
نسخههای بیلد نهایی و عملیاتی معمولاً باید بالاترین سطح بهینهسازی را داشته باشند. بهترین نتایج با --release حاصل میشود که به طور خودکار --single-module را نیز در بر دارد.
-O0
-O1
-O2
-O3
-Os
-Oz
متغیرهای محیطی (ENVIRONMENT VARIABLES)
CRYSTAL_CACHE_DIR
مسیری را مشخص میکند که کریستال نتایج کامپایل جزئی را برای سرعت بخشیدن به ساختهای بعدی در آن ذخیره میکند. این مسیر همچنین برای ذخیره موقت فایلهای اجرایی زمانی که برنامههای کریستال به جای 'crystal build' با 'crystal run' اجرا میشوند، استفاده میشود.
CRYSTAL_EXEC_PATH
مسیری را تعیین میکند که crystal در آن به دنبال زیردستورات خارجی میگردد.
CRYSTAL_LIBRARY_PATH
مسیرهایی را مشخص میکند که کریستال در آنها به دنبال کتابخانهها (باینری) جستجو میکند. مسیرهای چندگانه را میتوان با ":" از هم جدا کرد. این مسیرها به عنوان پرچمهای -L به لینکر ارسال میشوند.
الگوی '$ORIGIN' در ابتدای مسیر به دایرکتوری محل قرارگیری باینری کامپایلر بسط مییابد. به عنوان مثال، '$ORIGIN/../lib/crystal' مسیر کتابخانه استاندارد را به صورت عمومی و مستقل از مسیرهای مطلق (با فرض صحیح بودن مکان نسبی) نسبت به مکان کامپایلر حل میکند.
CRYSTAL_PATH
مسیرهایی را مشخص میکند که کریستال در آنها به دنبال فایلهای سورس مورد نیاز جستجو میکند. مسیرهای چندگانه را میتوان با ":" از هم جدا کرد.
الگوی '$ORIGIN' در ابتدای مسیر به دایرکتوری محل قرارگیری باینری کامپایلر بسط مییابد. به عنوان مثال، '$ORIGIN/../share/crystal/src' مسیر کتابخانه استاندارد را به صورت عمومی و مستقل از مسیرهای مطلق (با فرض صحیح بودن مکان نسبی) نسبت به مکان کامپایلر حل میکند.
CRYSTAL_OPTS
گزینههایی را برای کامپایلر کریستال تعریف میکند تا علاوه بر آرگومانهای خط فرمان استفاده شوند. ساختار نحوی آن دقیقاً مشابه آرگومانهای خط فرمان است. این قابلیت هنگام استفاده از کریستال در پیکربندیهای ساخت مفید است، برای مثال 'CRYSTAL_OPTS=--debug make build'.
همچنین ببینید (SEE ALSO)
https://crystal-lang.org وبسایت رسمی.
https://github.com/crystal-lang/crystal مخزن رسمی.
| 2026-07-23 | crystal 1.21.0 |