این دستور ocamlc است که می تواند در ارائه دهنده هاست رایگان OnWorks با استفاده از یکی از چندین ایستگاه کاری آنلاین رایگان ما مانند Ubuntu Online، Fedora Online، شبیه ساز آنلاین ویندوز یا شبیه ساز آنلاین MAC OS اجرا شود.
برنامه:
نام
ocamlc - کامپایلر بایت کد OCaml
خلاصه
ocamlc [ گزینه های ] نام فایل ...
ocamlc.opt [ گزینه های ] نام فایل ...
شرح
کامپایلر بایت کد OCaml ocamlc(1) فایل های منبع OCaml را به فایل های شی بایت کد کامپایل می کند
و این فایل های شی را برای تولید فایل های اجرایی بایت کد مستقل پیوند می دهد. اینها
سپس فایل های اجرایی توسط مفسر بایت کد اجرا می شوند ocamlrun(1).
La ocamlc(1) دستور دارای یک رابط خط فرمان مشابه با اکثر کامپایلرهای C است.
چندین نوع آرگومان را می پذیرد و آنها را به صورت متوالی پردازش می کند:
آرگومان هایی که به .mli ختم می شوند به عنوان فایل های منبع برای رابط های واحد کامپایل در نظر گرفته می شوند.
رابط ها نام های صادر شده توسط واحدهای کامپایل را مشخص می کنند: آنها نام های ارزش را با آن اعلام می کنند
انواع آنها، انواع داده های عمومی را تعریف می کنند، انواع داده های انتزاعی را اعلام می کنند و غیره. از
پرونده x.mli، ocamlc(1) کامپایلر یک رابط کامپایل شده در فایل تولید می کند x.cmi.
آرگومان هایی که به .ml ختم می شوند به عنوان فایل های منبع برای پیاده سازی واحد کامپایل در نظر گرفته می شوند.
پیاده سازی ها تعاریفی را برای نام های صادر شده توسط واحد ارائه می دهند و همچنین شامل
عباراتی که باید از نظر عوارض جانبی مورد ارزیابی قرار گیرند. از فایل x.ml، ocamlc(1)
کامپایلر بایت کد شی کامپایل شده را در فایل تولید می کند x.cmo.
اگر فایل رابط x.mli وجود دارد، پیاده سازی x.ml در برابر بررسی می شود
رابط کامپایل شده مربوطه x.cmi که فرض می شود وجود دارد. اگر اینترفیس وجود ندارد xmli
ارائه شده است، تالیف x.ml یک فایل واسط کامپایل شده تولید می کند x.cmi علاوه بر این
به فایل کد شی کامپایل شده x.cmo. پرونده x.cmi تولید شده مربوط به یک
رابطی که هر چیزی را که در پیاده سازی تعریف شده است صادر می کند x.ml
آرگومان هایی که به .cmo ختم می شوند برای بایت کد شی کامپایل می شوند. این فایل ها لینک شده اند
همراه با فایل های شی به دست آمده با کامپایل آرگومان های .ml (در صورت وجود) و
کتابخانه استاندارد OCaml، برای تولید یک برنامه اجرایی مستقل. ترتیبی که
آرگومان های .cmo و.ml در خط فرمان ارائه شده اند مربوط است: واحدهای کامپایل هستند
در زمان اجرا به این ترتیب مقداردهی اولیه می شود و استفاده از یک جزء از a یک خطای زمان پیوند است
واحد قبل از مقداردهی اولیه از این رو، یک داده شده است xفایل .cmo باید قبل از همه .cmo باشد
فایل هایی که به واحد اشاره دارند x.
آرگومان هایی که به .cma ختم می شوند به عنوان کتابخانه های بایت کد شی در نظر گرفته می شوند. یک کتابخانه از
بایت کد شی مجموعه ای از فایل های بایت کد شی (فایل های cmo) را در یک فایل واحد بسته بندی می کند.
کتابخانه ها با ocamlc -a (توضیحات را ببینید -a گزینه زیر). در
فایلهای شی موجود در کتابخانه بهعنوان فایلهای .cmo معمولی پیوند داده میشوند (به بالا مراجعه کنید)، در
ترتیبی که هنگام ساخت فایل .cma مشخص شده است. تنها تفاوت این است که اگر یک شی
فایل موجود در یک کتابخانه به هیچ کجای برنامه ارجاع داده نمی شود، پس اینطور نیست
مرتبط شده است.
آرگومان هایی که به .c ختم می شوند به کامپایلر C ارسال می شوند که یک فایل شی .o تولید می کند.
این فایل شی با برنامه پیوند داده می شود اگر -سفارشی پرچم تنظیم شده است (به
شرح -سفارشی در زیر).
آرگومان هایی که به .o یا .a ختم می شوند، فایل ها و کتابخانه های شی C هستند. آن ها هستند
هنگام پیوند به پیوند دهنده C منتقل می شود -سفارشی حالت (توضیحات را ببینید -سفارشی
در زیر).
آرگومان هایی که به .so ختم می شوند، کتابخانه های مشترک C (DLL) فرض می شوند. در طول پیوند، آنها
برای توابع C خارجی که از کد OCaml ارجاع داده شده اند جستجو می شوند و نام آنها هستند
در فایل اجرایی بایت کد تولید شده نوشته شده است. سیستم زمان اجرا ocamlrun(1) سپس بارگذاری می شود
آنها به صورت پویا در زمان شروع برنامه.
خروجی فاز پیوند یک فایل حاوی بایت کد کامپایل شده است که می تواند باشد
توسط مفسر بایت کد OCaml اجرا می شود: دستور ocamlrun(1). اگر Caml.out هست
نام فایل تولید شده توسط مرحله پیوند، دستور ocamlrun Caml.out
arg1 arg2 ... ارگ کد کامپایل شده موجود در را اجرا می کند Caml.out، عبور آن به عنوان
رشته های کاراکتر را آرگومان می کند arg1 به ارگ. (دیدن ocamlrun(1) برای جزئیات بیشتر.)
در اکثر سیستم ها، فایل تولید شده توسط فاز پیوند می تواند مستقیما اجرا شود، مانند:
./caml.out arg1 arg2 ... ارگ. فایل تولید شده دارای مجموعه بیت اجرایی و آن است
به تنهایی مفسر بایت کد را راه اندازی می کند.
ocamlc.opt همان کامپایلر است ocamlc، اما با کامپایلر Native-code کامپایل شده است
اوکاملوپت(1). بنابراین، دقیقاً مانند آن رفتار می کند ocamlc، اما سریعتر کامپایل می شود. ocamlc.opt ممکن است
در همه نصب های OCaml در دسترس نباشد.
OPTIONS
گزینه های خط فرمان زیر توسط شناسایی می شوند ocamlc(1).
-a یک کتابخانه (فایل cma.) با فایل های شی (فایل های cmo.) که در دستور داده شده است بسازید
خط، به جای پیوند دادن آنها به یک فایل اجرایی. نام کتابخانه باید
تنظیم شود با -o گزینه.
If -سفارشی, -cclib or -copt گزینه ها در خط فرمان منتقل می شوند، این گزینه ها
در کتابخانه .cma حاصل ذخیره می شوند. سپس، با این کتابخانه پیوند برقرار کنید
به طور خودکار دوباره اضافه می کند -سفارشی, -cclib و -copt گزینه هایی که انگار بوده اند
در خط فرمان ارائه شده است، مگر اینکه - noautolink گزینه داده شده است. علاوه بر این،
یک رشته فرعی $CAMLORIGIN داخل یک -copt گزینه ها با مسیر کامل جایگزین می شوند
به کتابخانه .cma، به استثنای نام فایل. -absname نمایش نام فایل های مطلق در
پیغام خطا.
-نه اطلاعات دقیق در مورد کامپایل (انواع، اتصالات، دم فراخوانی، و غیره) را تخلیه کنید.
اطلاعات مربوط به فایل ".ml در فایل قرار می گیرد "نه. در مورد یک نوع
خطا، تمام اطلاعات استنباط شده توسط نوع چک کننده را قبل از خطا تخلیه کنید. در
"فایل .annot را می توان با دستورات emacs داده شده استفاده کرد emacs/caml-types.el به
انواع نمایش و حاشیه نویسی های دیگر به صورت تعاملی.
-bin-annot
اطلاعات دقیق در مورد کامپایل (انواع، اتصالات، دم فراخوانی و غیره) را تخلیه کنید.
در قالب باینری اطلاعات مربوط به فایل ".ml در فایل قرار می گیرد "cmt. که در
در صورت وجود یک خطای نوع، تمام اطلاعات استنباطشده توسط چککننده تایپ را قبل از آن تخلیه کنید
خطا. فایل های حاشیه نویسی تولید شده توسط -bin-annot حاوی اطلاعات بیشتر
و بسیار فشرده تر از فایل های تولید شده توسط -نه.
-c فقط کامپایل مرحله پیوند کامپایل را سرکوب کنید. فایل های کد منبع هستند
تبدیل به فایل های کامپایل شده، اما هیچ فایل اجرایی تولید نمی شود. این گزینه است
برای کامپایل جداگانه ماژول ها مفید است.
-سی سی کامپ
استفاده کنید کامپ به عنوان پیوند دهنده C هنگام پیوند در حالت "زمان اجرای سفارشی" (به -سفارشی
گزینه) و به عنوان کامپایلر C برای کامپایل فایل های منبع .c.
-cclib -llibname
عبور کن -llibname هنگام پیوند در حالت "زمان اجرای سفارشی" گزینه ای به پیوند دهنده C
(نگاه کنید به -سفارشی گزینه). این باعث می شود که کتابخانه C داده شده با آن مرتبط شود
برنامه است.
-copt انتخاب
داده شده را پاس کنید انتخاب به کامپایلر و پیوند دهنده C، هنگام پیوند در "custom
حالت زمان اجرا" (به -سفارشی گزینه). برای مثال، -copt -Lدیر باعث C می شود
پیوند دهنده برای جستجوی کتابخانه های C در دایرکتوری دیر.
-compat-32
بررسی کنید که فایل اجرایی بایت کد تولید شده بتواند روی پلتفرم های 32 بیتی اجرا شود و سیگنال دهد
خطا اگر نتواند این در هنگام کامپایل بایت کد روی یک ماشین 64 بیتی مفید است.
پیکربندی کنید
چاپ شماره نسخه از ocamlc(1) و خلاصه ای دقیق از پیکربندی آن،
سپس خارج شوید
-سفارشی
پیوند در حالت "زمان اجرای سفارشی". در حالت پیوند پیشفرض، پیوند دهنده تولید میکند
بایت کدی که قرار است با سیستم زمان اجرا مشترک اجرا شود،
ocamlrun(1). در حالت زمان اجرا سفارشی، پیوند دهنده یک فایل خروجی تولید می کند که
شامل سیستم زمان اجرا و بایت کد برنامه است. نتیجه
فایل بزرگتر است، اما می توان آن را به طور مستقیم اجرا کرد، حتی اگر ocamlrun(1) فرمان است
نصب نشده. علاوه بر این، حالت "Custom Runtime" پیوند کد OCaml را با آن امکان پذیر می کند
توابع C تعریف شده توسط کاربر
هرگز از نوار(1) دستور بر روی فایل های اجرایی تولید شده توسط ocamlc -سفارشی، این
قسمت بایت کد فایل اجرایی را حذف می کند.
-dllib -llibname
کتابخانه مشترک C را ترتیب دهید DLLlibname.بنابراین برای بارگذاری پویا توسط run-
سیستم زمانی ocamlrun(1) در زمان شروع برنامه.
-dllpath دیر
دایرکتوری را اضافه می کند دیر به مسیر جستجوی زمان اجرا برای کتابخانه های مشترک C. در
زمان پیوند، کتابخانه های مشترک در مسیر جستجوی استاندارد جستجو می شوند (یکی
مربوط به -I گزینه). در -dllpath گزینه به سادگی ذخیره می کند دیر در
فایل اجرایی تولید شده، جایی که ocamlrun(1) می تواند آن را پیدا کرده و از آن استفاده کند.
-برای بسته شناسایی
این گزینه برای سازگاری با اوکاملوپت(1)؛ هیچ کاری نمی کند
-g اطلاعات اشکال زدایی را هنگام کامپایل و پیوند اضافه کنید. این گزینه در مورد نیاز است
برای اینکه بتوانید برنامه را با آن اشکال زدایی کنید ocamldbug(1) و برای تولید پشته
هنگامی که برنامه در یک استثنای غیرقابل خاتمه مییابد، پستریسی میکند.
-i باعث می شود کامپایلر تمام نام های تعریف شده (با انواع استنتاج شده یا آنها را چاپ کند
تعاریف) هنگام کامپایل یک پیاده سازی (فایل .ml). بدون فایل کامپایل شده (.cmo
و فایل های .cmi) تولید می شوند. این می تواند برای بررسی انواع استنتاج شده مفید باشد
کامپایلر همچنین، از آنجایی که خروجی از نحو رابط ها پیروی می کند، می تواند کمک کند
در نوشتن یک رابط صریح (فایل mli) برای یک فایل: فقط استاندارد را تغییر مسیر دهید
خروجی کامپایلر را به یک فایل .mli، و ویرایش آن فایل برای حذف همه
اعلام اسامی صادر نشده
-I فهرست راهنما
دایرکتوری داده شده را به لیست دایرکتوری های جستجو شده برای رابط کامپایل شده اضافه کنید
فایلها (.cmi)، فایلهای کد شی کامپایلشده (.cmo)، کتابخانهها (cma.) و کتابخانههای C
مشخص شده با -cclib -lxxx . به طور پیش فرض، ابتدا دایرکتوری فعلی جستجو می شود،
سپس فهرست راهنمای کتابخانه استاندارد. فهرست راهنماهای اضافه شده با -I جستجو می شوند
دایرکتوری فعلی، به ترتیبی که در خط فرمان داده شده است،
اما قبل از دایرکتوری استاندارد کتابخانه. گزینه را نیز ببینید -nostdlib.
اگر دایرکتوری داده شده با شروع شود +، نسبت به کتابخانه استاندارد گرفته شده است
فهرست راهنما. برای مثال، -I +compiler-libs زیر شاخه را اضافه می کند کامپایلر-libs of
کتابخانه استاندارد به مسیر جستجو.
-ایمپل نام فایل
فایل را کامپایل کنید نام فایل به عنوان یک فایل پیاده سازی، حتی اگر پسوند آن نباشد
.ml
-intf نام فایل
فایل را کامپایل کنید نام فایل به عنوان یک فایل رابط، حتی اگر پسوند آن mli. نباشد.
پسوند -intf رشته
تشخیص نام فایل هایی که با آنها ختم می شود رشته به عنوان فایل های رابط (به جای پیش فرض
.mli).
-keep-docs
رشته های مستندات را در فایل های cmi. ایجاد شده نگه دارید.
-keep-locs
مکانها را در فایلهای cmi. ایجاد شده نگه دارید.
-برچسب ها
برچسبها در انواع نادیده گرفته نمیشوند، برچسبها ممکن است در برنامهها استفاده شوند و برچسبگذاری شوند
پارامترها را می توان به هر ترتیبی ارائه کرد. این پیش فرض است.
-لینکال
تمام ماژولهای موجود در کتابخانهها را مجبور به پیوند کنید. اگر این پرچم وجود ندارد
دادهشده، ماژولهای بدون ارجاع به آن پیوند داده نمیشوند. هنگام ساخت یک کتابخانه (گزینه -a),
تنظیم کردن -لینکال گزینه تمام پیوندهای بعدی برنامه های مربوط به آن را مجبور می کند
کتابخانه برای پیوند دادن همه ماژول های موجود در کتابخانه.
-ساخت زمان اجرا
یک سیستم زمان اجرا سفارشی بسازید (در فایل مشخص شده توسط گزینه -o) ترکیب کردن
فایل ها و کتابخانه های شی C داده شده در خط فرمان. این زمان اجرا سفارشی
سیستم را می توان بعداً برای اجرای فایل های اجرایی بایت کد تولید شده با گزینه مورد استفاده قرار داد
ocamlc -استفاده-زمان اجرا runtime-name.
-بدون نام مستعار-deps
از ثبت وابستگی برای نام مستعار ماژول خودداری کنید.
بدون برنامه کاربردی
رفتار کاربردی تابع ها را غیرفعال می کند. با این گزینه، هر تابع
برنامه انواع جدیدی را در نتیجه خود ایجاد می کند و یک تابع یکسان را دو بار اعمال می کند
به همان آرگومان دو ساختار ناسازگار به دست می آید.
-نواسرت
چک های ادعایی را جمع آوری نکنید. توجه داشته باشید که فرم مخصوص ادعا غلط همیشه ... هست
کامپایل شده است زیرا به طور خاص تایپ شده است. این پرچم در هنگام پیوند هیچ تأثیری ندارد
فایل های از قبل کامپایل شده
- noautolink
هنگام پیوند دادن کتابخانههای .cma، نادیده بگیرید -سفارشی, -cclib و -copt گزینه های بالقوه
موجود در کتابخانه ها (اگر این گزینه ها هنگام ساختن داده شده باشد
کتابخانه ها). اگر یک کتابخانه حاوی مشخصات نادرست C باشد، این می تواند مفید باشد
کتابخانه ها یا گزینه های C؛ در این صورت، در حین پیوند، تنظیم کنید - noautolink و عبور
کتابخانه ها و گزینه های C را در خط فرمان تصحیح کنید.
-nlabels
برچسب های غیر اختیاری در انواع را نادیده بگیرید. برچسب ها را نمی توان در برنامه ها استفاده کرد، و
ترتیب پارامترها سخت می شود.
-nostdlib
دایرکتوری استاندارد کتابخانه را به صورت خودکار به فهرست دایرکتوری ها اضافه نکنید
جستجو برای فایل های رابط کامپایل شده (.cmi)، فایل های کد شی کامپایل شده (.cmo)،
کتابخانه های (.cma)، و کتابخانه های C مشخص شده با -cclib -lxxx . گزینه را نیز ببینید
-I.
-o فایل exec
نام فایل خروجی تولید شده توسط لینکر را مشخص کنید. نام خروجی پیش فرض
is a.out، مطابق با سنت یونیکس. اگر -a گزینه داده شده است، مشخص کنید
نام کتابخانه تولید شده اگر بسته گزینه داده شده است، نام را مشخص کنید
از فایل شی بسته بندی شده تولید شده است. اگر -output-obj گزینه داده شده است، مشخص کنید
نام فایل خروجی تولید شده این همچنین می تواند در هنگام کامپایل استفاده شود
رابط یا فایل پیاده سازی، بدون پیوند، در این صورت نام را تنظیم می کند
از فایل cmi یا cmo، و همچنین نام ماژول را به نام فایل تا مقدار تنظیم می کند
نقطه اول
-باز کن واحد
ماژول داده شده را قبل از پردازش رابط یا فایل های پیاده سازی باز می کند. اگر
چند -باز کن گزینه ها داده می شوند، آنها به ترتیب پردازش می شوند، درست مثل اینکه
اظهارات باز است! واحد 1؛؛ ... باز کن! moduleN;; در بالای هر فایل اضافه شد.
-output-obj
باعث می شود که پیوند دهنده یک فایل شی C به جای یک فایل اجرایی بایت کد تولید کند.
این برای بسته بندی کد OCaml به عنوان یک کتابخانه C، قابل فراخوانی از هر برنامه C مفید است. در
نام فایل شی خروجی باید با تنظیم شود -o گزینه. این گزینه نیز می تواند
برای تولید یک فایل منبع C (پسوند c.) یا یک فایل اشتراکی/پویا کامپایل شده استفاده شود
کتابخانه (.so extension).
بسته یک فایل شی بایت کد (فایل cmo.) و رابط کامپایل شده مرتبط با آن بسازید
(.cmi) که فایل های شی داده شده در خط فرمان را ترکیب می کند و آنها را ظاهر می کند
به عنوان زیر ماژول های خروجی فایل cmo. نام فایل cmo خروجی باید باشد
داده شده با -o گزینه. برای مثال، ocamlc بسته -o p.cmo a.cmo b.cmo c.cmo
فایل های کامپایل شده p.cmo و p.cmi را تولید می کند که یک واحد کامپایل دارای سه واحد را توصیف می کند
ماژول های فرعی A، B و C، مربوط به محتویات فایل های شی a.cmo،
b.cmo و c.cmo. این مطالب را می توان به عنوان PA، PB و PC در
باقی مانده برنامه
-صص فرمان
باعث می شود کامپایلر داده شده را فراخوانی کند فرمان به عنوان یک پیش پردازنده برای هر منبع
فایل. خروجی از فرمان به یک فایل میانی هدایت می شود که این است
تدوین شده است. در صورت عدم وجود خطا در کامپایل، فایل میانی حذف می شود
پس از آن نام این فایل از نام پایه فایل منبع ساخته شده است
با پسوند .ppi برای فایل رابط (.mli) و ppo. برای پیاده سازی
فایل (.ml).
-ppx فرمان
پس از تجزیه، درخت نحو انتزاعی را از طریق پیش پردازنده لوله کنید فرمان.
واحد Ast_mapper(3) رابط خارجی یک پیش پردازنده را پیاده سازی می کند.
-مدیر
مسیر اطلاعات را در حین بررسی نوع بررسی کنید تا مطمئن شوید که همه انواع هستند
به شکلی اصلی مشتق شده است. هنگام استفاده از آرگومان های برچسب دار و/یا چند شکلی
روش ها، این پرچم برای اطمینان از نسخه های بعدی کامپایلر مورد نیاز است
می تواند انواع را به درستی استنتاج کند، حتی اگر الگوریتم های داخلی تغییر کنند. همه برنامه ها
پذیرفته شده در -مدیر حالت نیز در حالت پیش فرض با معادل پذیرفته می شود
انواع، اما امضاهای باینری مختلف، و این ممکن است بررسی نوع را کند کند. هنوز
ایده خوبی است که یک بار قبل از انتشار کد منبع از آن استفاده کنید.
-Retypes
در حین بررسی نوع، انواع بازگشتی دلخواه مجاز است. به طور پیش فرض، فقط بازگشتی
انواعی که در آن بازگشت از طریق یک نوع شیء عبور می کند، پشتیبانی می شوند. توجه داشته باشید که یک بار
شما با استفاده از این پرچم یک رابط ایجاد کرده اید، باید دوباره برای همه از آن استفاده کنید
وابستگی ها
-نوع زمان اجرا پسوند
اضافه کردن پسوند به نام کتابخانه زمان اجرا که توسط برنامه استفاده خواهد شد. اگر
OCaml با گزینه پیکربندی شد -with-debug-runtime، سپس d پسوند است
پشتیبانی می شود و یک نسخه اشکال زدایی از زمان اجرا را ارائه می دهد.
ایمن رشته
جداسازی بین انواع را اعمال کنید رشته و بایت، بدین ترتیب رشته ها خوانده می شوند
فقط. این به صورت پیش فرض در نسخه آینده OCaml خواهد بود.
-مسیرهای کوتاه
هنگامی که یک نوع در زیر چندین مسیر ماژول قابل مشاهده است، از کوتاهترین آن استفاده کنید
چاپ نام نوع در رابط های استنباط شده و پیام های خطا و هشدار.
توالی دقیق
قسمت سمت چپ هر دنباله را مجبور کنید که واحد نوع داشته باشد.
-نخ
کامپایل یا پیوند دادن برنامه های چند رشته ای، در ترکیب با سیستم "رشته ها"
کتابخانه شرح داده شده در La OCaml کاربر کتابچه راهنمای.
-ناامن
بررسی باند برای دسترسیهای آرایه و رشته را خاموش کنید ( v.(i)وs.[i]
سازه ها). برنامه های کامپایل شده با -ناامن بنابراین کمی سریعتر هستند، اما
ناامن: اگر برنامه به آرایه یا رشته ای خارج از آن دسترسی پیدا کند، هر اتفاقی ممکن است بیفتد
محدوده آن
-ناامن-رشته
انواع را مشخص کنید رشته و بایت، در نتیجه رشته ها قابل نوشتن هستند. بنا به دلایلی
از سازگاری با عقب، این تنظیم پیش فرض در حال حاضر است، اما این
در نسخه آینده OCaml تغییر خواهد کرد.
-استفاده-زمان اجرا runtime-name
یک فایل اجرایی بایت کد ایجاد کنید که می تواند در زمان اجرا سفارشی اجرا شود
سیستم runtime-name، ساخته شده زودتر با ocamlc -ساخت زمان اجرا runtime-name.
-v شماره نسخه کامپایلر و محل کتابخانه استاندارد را چاپ کنید
دایرکتوری، سپس خارج شوید.
کلاهبرداری
تمام دستورات خارجی را قبل از اجرا چاپ کنید، به ویژه فراخوانی
کامپایلر C و پیوند دهنده در -سفارشی حالت برای اشکال زدایی مشکلات کتابخانه C مفید است.
-vmthread
کامپایل یا پیوند دادن برنامه های چند رشته ای، در ترکیب با رشته های سطح VM
کتابخانه شرح داده شده در La OCaml کاربر کتابچه راهنمای.
-vnum or -version
شماره نسخه کامپایلر را به صورت کوتاه چاپ کنید (به عنوان مثال "3.11.0")، سپس خارج شوید.
-w لیست هشدار
هشدارهای مشخص شده توسط آرگومان را فعال، غیرفعال یا به عنوان کشنده علامت گذاری کنید
لیست هشدار.
هر هشدار می تواند باشد فعال or غیر فعال، و هر هشدار می تواند باشد کشندهor غیر کشنده.
اگر اخطار غیرفعال باشد، نمایش داده نمیشود و بر کامپایل در هیچ کدام تأثیری نمیگذارد
راه (حتی اگر کشنده باشد). اگر یک هشدار فعال باشد، به طور معمول توسط هشدار نمایش داده می شود
کامپایلر هر زمان که کد منبع آن را فعال کند. اگر فعال و کشنده باشد،
کامپایلر نیز پس از نمایش با خطا متوقف می شود.
La لیست هشدار آرگومان دنباله ای از مشخص کننده های هشدار است، بدون جداکننده
بین آنها. یک هشدار دهنده یکی از موارد زیر است:
+تعداد شماره هشدار را فعال کنید تعداد.
-تعداد شماره هشدار را غیرفعال کنید تعداد.
@تعداد فعال کردن و علامت گذاری به عنوان شماره هشدار کشنده تعداد.
+شماره 1..شماره 2 فعال کردن همه هشدارها بین شماره 1 و شماره 2 (شامل).
-شماره 1..شماره 2 غیرفعال کردن همه هشدارها بین شماره 1 و شماره 2 (شامل).
@شماره 1..شماره 2 فعال کردن و علامت گذاری به عنوان کشنده همه هشدارها بین شماره 1 و شماره 2
(شامل).
+نامه فعال کردن مجموعه هشدارهای مربوط به نامه. نامه ممکن است باشد
حروف بزرگ یا کوچک.
-نامه غیرفعال کردن مجموعه هشدارهای مربوط به نامه. نامه ممکن است باشد
حروف بزرگ یا کوچک.
@نامه مجموعه اخطارهای مربوط به را فعال و به عنوان کشنده علامت گذاری کنید نامه.
حرف ممکن است بزرگ یا کوچک باشد.
حرف بزرگ فعال کردن مجموعه هشدارهای مربوط به حرف بزرگ.
حروف کوچک غیرفعال کردن مجموعه هشدارهای مربوط به حروف کوچک.
شماره های هشدار به شرح زیر است.
1 علامت شروع نظر با ظاهر مشکوک.
2 علامت پایان نظر با ظاهر مشکوک.
3 ویژگی منسوخ شده
4 تطبیق الگوی شکننده: تطبیقی که حتی اگر کامل باقی بماند
سازنده های اضافی به یکی از انواع مختلف مطابقت داده شده اضافه می شوند.
5 تابع جزئی اعمال شده: عبارتی که نتیجه آن دارای نوع تابع است و است
نادیده گرفته شد
6 برچسب در برنامه کاربردی حذف شده است.
7 روش بدون استفاده از "روش!" کلمه کلیدی
8 مطابقت جزئی: موارد گمشده در تطبیق الگو.
9 فیلد از دست رفته در یک الگوی رکورد.
10 عبارت در سمت چپ دنباله ای که نوع ندارد واحد
(و این یک تابع نیست، هشدار شماره 5 را ببینید).
11 مورد اضافی در تطبیق الگو (مورد تطبیق استفاده نشده).
12 الگوی فرعی اضافی در یک تطبیق الگو.
13 نادیده گرفتن یک متغیر نمونه.
14 فرار غیرقانونی بک اسلش در یک ثابت رشته.
15 روش خصوصی به طور ضمنی عمومی شده است.
16 آرگومان اختیاری غیرقابل حذف.
17 روش مجازی اعلام نشده.
18 نوع غیر اصلی.
19 تایپ بدون اصالت.
20 آرگومان تابع استفاده نشده.
21 اظهارنامه بدون بازگشت.
22 هشدار پیش پردازنده.
23 رکورد بی فایده با بند
24 نام ماژول بد: نام فایل منبع یک نام ماژول Ocaml معتبر نیست.
25 تطبیق الگو با تمام بندهای محافظت شده.
26 متغیر استفاده نشده مشکوک: متغیر بلااستفاده که با آن مقید شده است اجازه or asو
با نویسه زیرخط (_) شروع نمی شود.
27 متغیر استفاده نشده بی خطر: متغیر استفاده نشده که با آن محدود نشده است اجازه نه as,
و با نویسه زیرخط (_) شروع نمی شود.
28 یک الگو شامل یک سازنده ثابت است که روی خط زیر (_) اعمال می شود.
الگوی.
29 یک انتهای خط بدون فرار در یک ثابت رشته پیدا شد. این ممکن است باعث شود
مشکلات قابل حمل بین یونیکس و ویندوز
30 دو برچسب یا سازنده به همان نام به دو صورت متقابل تعریف می شوند
انواع بازگشتی
31 یک ماژول دو بار در یک فایل اجرایی پیوند داده می شود.
32 اعلام ارزش استفاده نشده.
33 بیانیه باز استفاده نشده.
34 اعلامیه نوع استفاده نشده.
35 شاخص برای حلقه استفاده نشده.
36 متغیر جد استفاده نشده.
37 سازنده استفاده نشده.
38 سازنده افزونه استفاده نشده.
39 پرچم rec استفاده نشده.
40 نام سازنده یا برچسب خارج از محدوده استفاده می شود.
41 نام سازنده یا برچسب مبهم.
42 نام سازنده یا برچسب مبهم.
43 برچسب غیر اختیاری اعمال می شود.
44 عبارت Open یک شناسه از قبل تعریف شده را سایه می اندازد.
45 عبارت Open یک برچسب یا سازنده از قبل تعریف شده را سایه می اندازد.
46 خطا در متغیر محیطی.
47 بار مشخصه غیرقانونی.
48 حذف ضمنی آرگومان های اختیاری.
49 هنگام جستجوی نام مستعار ماژول، فایل cmi وجود ندارد.
50 نظر مستند غیر منتظره.
حروف مخفف مجموعه هشدارهای زیر هستند. هر نامه ای که ذکر نشده است
اینجا با مجموعه خالی مطابقت دارد.
A همه هشدارها
C 1، 2
D 3
E 4
F 5
K 32، 33، 34، 35، 36، 37، 38، 39
L 6
M 7
P 8
R 9
S 10
U 11، 12
V 13
X 14، 15، 16، 17، 18، 19، 20، 21، 22، 23، 24، 25، 30
Y 26
Z 27
تنظیمات پیش فرض است -w +a-4-6-7-9-27-29-32..39-41-42-44-45-48-50. توجه داشته باشید که
هشدارها 5 و 10 بسته به اجزای داخلی نوع، همیشه تحریک نمی شوند
جستجوگر
هشدار-خطا لیست هشدار
هشدارهای مشخص شده در آرگومان را به عنوان خطا علامت گذاری کنید لیست هشدار. کامپایلر
زمانی که یکی از این اخطارها منتشر شود با خطا متوقف می شود. در لیست هشدار
همان معنی را دارد که برای -w گزینه: الف + علامت (یا یک حرف بزرگ).
هشدارهای مربوطه به عنوان کشنده، الف - علامت (یا یک حرف کوچک) آنها را می چرخاند
بازگشت به هشدارهای غیر کشنده، و الف @ علامت هم فعال می کند و هم به عنوان کشنده علامت گذاری می کند
هشدارهای مربوطه
توجه: استفاده از آن توصیه نمی شود هشدار-خطا گزینه در کد تولید،
زیرا تقریباً مطمئناً از کامپایل برنامه شما با نسخه های بعدی جلوگیری می کند
از OCaml هنگامی که آنها هشدارهای جدید اضافه می کنند یا هشدارهای موجود را تغییر می دهند.
تنظیمات پیش فرض است هشدار-خطا -a (همه هشدارها غیر کشنده هستند).
هشدار-کمک
توضیح تمام شماره های هشدار موجود را نشان دهید.
-جایی که محل کتابخانه استاندارد را چاپ کنید، سپس خارج شوید.
- پرونده روند پرونده به عنوان نام فایل، حتی اگر با یک کاراکتر خط تیره (-) شروع شود.
-کمک or --کمک
نمایش خلاصه استفاده کوتاه و خروج.
با استفاده از خدمات onworks.net از ocamlc به صورت آنلاین استفاده کنید