د فورج زیرو ۱.۹.۰ خپرول، د سي او اسمبلر لپاره د جوړولو وسیله

فورج زیرو ۱.۹.۰ (fz)، چې د C، C++، او اسمبلۍ ژبو (NASM، GAS، FASM) کې لیکل شویو پروژو لپاره د قوماندې لاین جوړولو وسیله ده، خپره شوې ده. دا وسیله د اساسي کارونې لپاره میک فایل یا نورو ترتیب فایلونو ته اړتیا نلري. د پروژې کوډ په Go کې لیکل شوی او د MIT جواز لاندې جواز لري.

فورج زیرو د فایل ډول کشف کوي او په اتوماتيک ډول مناسب بیک اینډ غوره کوي. د کوډ هر فایل په یوه شی فایل کې تالیف کیږي، بیا په ټولو شیانو کې د دوه ګوني نړیوال سمبولونو لپاره چک کیږي او په یوه واحد اجرایوي فایل کې وصل کیږي. تالیف شوي فایلونه یوازې د اړونده کوډ فایلونو کې د بدلونونو وروسته کیش او بیا تالیف کیږي. په اختیاري توګه، د کوډ فایل تازه کولو وروسته د فایل سیسټم بدلون تعقیب او بیا تالیف ممکن دی.

ملاتړ شوي تالیف کونکي GCC، Clang، G++، او Clang++ دي؛ راټولونکي NASM، GAS، او FASM دي؛ لینک کونکي LD، GCC، او Clang دي؛ او د AR آرشیور ملاتړ شوی. د C او C++ لپاره لازمي خبرداری دا دي: "-Wall -Wextra -Werror -Wpedantic -Wshadow -Wconversion". د AddressSanitizer او UndefinedBehaviorSanitizer sanitizers په ډیفالټ ډول فعال شوي دي (دوی د -sanitize=false flag سره غیر فعال کیدی شي). ملاتړ شوي پلیټ فارمونه دا دي: Linux, macOS, Windows (WSL2 او په تجربوي ډول اصلي).

په 1.9.0 نسخه کې اصلي بدلونونه:

  • د "-ټارګیټ" بیرغ اضافه شو ، کوم چې د مناسب مخکیني وسیلو سره د هر جوړښت لپاره کراس تالیف فعالوي. fz په اتوماتيک ډول د ټاکل شوي پیژندونکي (د مثال په توګه، "arm-linux-gnueabihf-gcc") پراساس د کمپیلر، لینکر، او آرشیور نومونه ټاکي. ټول معیاري GNU هدف پلیټ فارمونه ملاتړ کیږي، پشمول د arm-linux-gnueabihf، aarch64-linux-gnu، او riscv64-linux-gnu.
  • د ژبې سرور پروتوکول (LSP) لپاره ملاتړ پلي شوی دی. د "-compile-commands" بیرغ د پروژې په روټ کې د compile_commands.json (تالیف ډیټابیس) فایل رامینځته کوي. فایل د ژبې له مخې لوستل کیږي. سرورونه clangd او ccls، په هغو ایډیټرونو کې چې د LSP ملاتړ کوي (Neovim، VSCode، CLion، Emacs، او نور) کې اتوماتیک تکمیل، د کوډ نیویګیشن، او تشخیص چمتو کوي.
  • د fz "-update" کمانډ اوس اوسنی بائنری /usr/local/bin/fz.old ته خوندي کوي مخکې لدې چې نوې نسخه نصب کړئ، تاسو ته اجازه درکوي چې بیرته پخوانۍ نسخې ته لاړ شئ پرته له دې چې بیا نصب کړئ.
  • په څو ډایرکټرۍ پروژو کې یوه ستونزه حل شوه چیرې چې د مختلفو فرعي ډایرکټریو څخه د ورته اساس نومونو سره فایلونه به د یو بل د اعتراض فایلونه له سره ولیکي. د اعتراض فایل نومونه اوس د سرچینې فایل ته د بشپړ نسبي لارې پراساس رامینځته کیږي.
  • د واحد فایلونو جوړولو لپاره متقابل حالت "fz -shell" پلي شوی.
  • د SplitCommand، CmdSet، او CmdBuild قوماندې لپاره د ازموینې پوښښ اضافه شوی دی. د لینکر پیکج لپاره د ازموینې پوښښ له ۱۷٪ څخه ۶۰٪ ته لوړ شوی، او د ټولو پیکجونو پوښښ له ۴۰٪ څخه ډیر شوی دی.
  • د ورک شوي اوزار زنځیر اجزاو سره د سناریوګانو ازموینې لپاره د چیک ټول بدلولو میکانیزم اضافه شو.

د تیرو خپرونو څخه بدلونونه:

  • نسخه ۱.۸.۰ د جامد کتابتونونو (-type static / -lib) اسمبلۍ پلي کوي، په څو ډایرکټر پروژو کې د اعتراض فایل نومونو انفرادیت ډاډمن کوي، او د ".." لارې د تیریدو پورې اړوند د اسمبلۍ فرعي سیسټم کې غلطۍ حل کوي.
  • نسخه ۱.۷.۰ موازي تالیف (-j N، 0 — د کورونو د شمیر اتوماتیک کشف)، د لینکر سکریپټونو لپاره ملاتړ (-T) او د ننوتلو نقطې پتې (-Ttext)، متقابل حالت (fz -shell)، د محصول بڼه واضح انتخاب (elf32، elf64، bin)، د C++ فایلونو تالیف (.cpp، .cc، .cxx) د ورته سخت خبرداری بیرغونو سره د C لپاره اضافه کوي.
  • نسخه ۱.۶.۰ د پروژې پیل (fz -init، .fz.yaml، .fzignore، README.md جوړوي)، د بوټلوډرونو او فرم ویئر لپاره د بن فارمیټ ملاتړ (-فارمیټ بن)، او د ترتیب ساحې libs، flags.cc، flags.asm، flags.ld اضافه کوي.
  • نسخه ۱.۵.۰ د څو سرچینو ډایرکټریو (source_dirs)، د واضح فایل لیستونه (source_files)، شامل/خارج نمونې، د لینکر کتابتونونو لپاره د libs ساحه، د .fzignore فایل، او د ترتیب فایلونو څو کچې یوځای کول معرفي کوي.

سرچینه: opennet.ru

د DDoS محافظت ، VPS VDS سرورونو سره د سایټونو لپاره معتبر کوربه توب واخلئ 🔥 د DDoS محافظت، VPS VDS سرورونو سره د باور وړ ویب پاڼې کوربه توب واخلئ | ProHoster