Dasturlash

Amsterdam Compiler Kit – Ochiq Manbali Ko‘p Platformali Kompilyator To‘plami

7-mart, 2026, 08:118 ko'rish3 daqiqa o'qish
Amsterdam Compiler Kit – Ochiq Manbali Ko‘p Platformali Kompilyator To‘plami

Amsterdam Compiler Kit (ACK) — dasturchilar uchun yaratilgan, bir nechta dasturlash tillarini va turli operatsion tizimlarni qo‘llab‑quvvatlaydigan ochiq manbali kompilyator to‘plamidir. 1987‑yildan beri Amsterda universiteti tomonidan ishlab chiqilgan bu loyiha, bugungi kunda ham eski va yangi platformalarda dastur yaratish imkonini beradi.

Qaysi tillar va platformalar qo‘llab‑quvvatlanadi?

ACK bir nechta mashhur dasturlash tillarini o‘z ichiga oladi:

  • ANSI C – zamonaviy C standartiga mos.
  • Pascal – akademik va tizim dasturlashda keng qo‘llaniladi.
  • Modula‑2 – modul asosidagi strukturalashgan til.
  • Basic – boshlang‘ich foydalanuvchilar uchun qulay.

K&R uslubidagi C ham ANSI C kompilyatori orqali ishlaydi.

Platforma ro‘yxati ham juda boy:

  • CP/M (i80) – eski kompyuterlar uchun .COM fayllar.
  • Linux (x86, m68k, MIPS, PowerPC) – ELF formatidagi ijro fayllari.
  • Minix (m68000) – Minix operatsion tizimi.
  • MS‑DOS (i386, i86) – .EXE va .COM fayllar.
  • macOS (i386, PowerPC) – Mach‑O format.
  • Raspberry Pi – GPU kodlari.
  • PDP‑11 V7 Unix – tarixiy binar fayllar.

O‘rnatish va sozlash

ACK‑ni o‘rnatish nisbatan oddiy. Asosiy talablar:

  • GNU gcc yoki boshqa ANSI C kompilyatori.
  • flex va yacc – leksik va sintaksis analizatorlari.
  • GNU make, Lua (posix kutubxonasi bilan), Python 3.4+
  • Taxminan 1 GB bo‘sh joy.

Makefile‑ni tahrirlab, PREFIX (o‘rnatish joyi) va PLATS (qurilma ro‘yxati) parametrlarini belgilash kifoya. Keyin make va sudo make install buyrug‘larini bajarish orqali to‘plam tizimga qo‘shiladi.

Foydalanish usullari

Asosiy buyruq ack. U kompilyatsiya va linklashni birlashtiradi. Eng ko‘p ishlatiladigan parametrlar:

  • -m<platform> – maqsadli platformani tanlash.
  • -o <file> – chiqish faylini belgilash.
  • -c – .o obyekt faylini yaratish.
  • -c.s – assembler kodini (.s) olish.
  • -O – optimallashtirish (daraja 1‑6).
  • -ansi – ANSI C rejimini yoqish.
  • -v – batafsil diagnostika.

Fayl kengaytmasiga qarab til avtomatik tanlanadi: .c – C, .p – Pascal, .mod – Modula‑2 va hokazo.

Afzalliklari va cheklovlari

ACK ning asosiy afzalliklari:

  • Bir necha tilni bitta to‘plamda birlashtiradi, bu esa o‘rganishni soddalashtiradi.
  • Ko‘p platformali qo‘llab‑quvvatlash – eski kompyuterlar ham zamonaviy Linux tizimlari.
  • BSD‑ga o‘xshash litsenziya – erkin foydalanish va tarqatish mumkin.

Shu bilan birga, ba’zi cheklovlar ham mavjud:

  • Kutubxonalar to‘plami faqat ANSI C darajasida, zamonaviy C11/C17 funksiyalari yo‘q.
  • Obyekt fayllari ACK‑ga xos formatda, boshqa kompilyatorlar bilan aralash ishlatib bo‘lmaydi.
  • Ba’zi eski komponentlar (masalan, EM interpreter) hozirgi tizimlarda ishlamasligi mumkin.

Jamiyat va qo‘llab‑quvvatlash

ACK faol open‑source hamjamiyatga ega. Litsenziya BSD‑ga o‘xshash bo‘lgani uchun, har qanday loyiha ichida erkin foydalanish mumkin. Dasturiy xatoliklar yoki muammolarni rasmiy saytdagi mailing list orqali bildirish tavsiya etiladi.

Umuman olganda, Amsterdam Compiler Kit – dasturchilar uchun ko‘p platformali, ko‘p tilli va erkin foydalanish imkoniyatiga ega bo‘lgan kuchli kompilyator to‘plamidir. U eski tizimlar bilan ishlashni xohlaganlar, shuningdek, dasturlash tillarini bir joyda o‘rganishni istaganlar uchun ajoyib tanlov bo‘lib qoladi.

Manba: Hacker News
#kompilyator #open source #dasturlash #platformalar #Amsterdam Compiler Kit
Telegram da muhokama qilish