เบเบฒเบ™เบ›เปˆเบญเบเป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ›เบฐเบเบญเบš Qbs 2.0

เบเบฒเบ™เบ›เปˆเบญเบเบŠเบธเบ”เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ›เบฐเบเบญเบš Qbs 2.0 เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบเบฒเบ”เปเบฅเป‰เบง. เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡ Qbs, Qt เปเบกเปˆเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบ™เบšเบฑเบ™เบ”เบฒเบ„เบงเบฒเบกเป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบช, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒ Qbs เบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡เบ–เบทเบเบญเบญเบเปเบšเบšเบกเบฒเป€เบžเบทเปˆเบญเบˆเบฑเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เบ›เบฐเบเบญเบšเป‚เบ„เบ‡เบเบฒเบ™เปƒเบ”เป†. Qbs เปƒเบŠเป‰เบžเบฒเบชเบฒ QML เบชเบฐเบšเบฑเบšเบ—เบตเปˆเบ‡เปˆเบฒเบเบ”เบฒเบเป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบ•เบปเบงเบชเป‰เบฒเบ‡เป‚เบ„เบ‡เบเบฒเบ™, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเปเบฒเบ™เบปเบ”เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบžเปเบชเบปเบกเบ„เบงเบ™เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป‚เบกเบ”เบนเบ™เบžเบฒเบเบ™เบญเบ, เปƒเบŠเป‰เบŸเบฑเบ‡เบŠเบฑเบ™ JavaScript, เปเบฅเบฐเบชเป‰เบฒเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบšเบšเบเปเบฒเบ™เบปเบ”เป€เบญเบ‡.

เบžเบฒเบชเบฒเบชเบฐเบ„เบฃเบดเบšเบ—เบตเปˆเปƒเบŠเป‰เปƒเบ™ Qbs เป„เบ”เป‰เบ–เบทเบเบ”เบฑเบ”เปเบ›เบ‡เป€เบžเบทเปˆเบญเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบเบฒเบ™เบœเบฐเบฅเบดเบ” เปเบฅเบฐ parsing เบ‚เบญเบ‡ build scripts เป‚เบ”เบเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™. เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, Qbs เบšเปเปˆเป„เบ”เป‰เบชเป‰เบฒเบ‡ makefiles, เปเบ•เปˆเบ•เบปเบงเบ‚เบญเบ‡เบกเบฑเบ™เป€เบญเบ‡, เป‚เบ”เบเบšเปเปˆเบกเบตเบ•เบปเบงเบเบฒเบ‡เป€เบŠเบฑเปˆเบ™: make utility, เบ„เบงเบšเบ„เบธเบกเบเบฒเบ™เป€เบ›เบตเบ”เบ•เบปเบง compilers เปเบฅเบฐ linkers, optimizing เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡เป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆเป€เบชเบฑเป‰เบ™เบชเบฐเปเบ”เบ‡เบฅเบฒเบเบฅเบฐเบญเบฝเบ”เบ‚เบญเบ‡เบ—เบธเบ dependencies. เบเบฒเบ™เบ›เบฐเบเบปเบ”เบ•เบปเบงเบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบเปˆเบฝเบงเบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เปเบฅเบฐเบ„เบงเบฒเบกเป€เบžเบดเปˆเบ‡เบžเบฒเบญเบฒเป„เบชเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ‚เบฐเบซเบ™เบฒเบ™เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™เปƒเบ™เบซเบผเบฒเบเบซเบปเบงเบ‚เปเป‰. เบชเปเบฒเบฅเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ—เบตเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบ‚เบญเบ‡เป„เบŸเบฅเปŒเปเบฅเบฐเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบเปˆเบญเบ, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ„เบทเบ™เปƒเบซเบกเปˆเป‚เบ”เบเปƒเบŠเป‰ Qbs เบชเบฒเบกเบฒเบ”เป„เบงเบเบงเปˆเบฒเบเบฒเบ™เป€เบฎเบฑเบ” - เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ„เบทเบ™เปƒเบซเบกเปˆเปเบกเปˆเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบเบทเบญเบšเบ—เบฑเบ™เบ—เบตเปเบฅเบฐเบšเปเปˆเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเปƒเบŠเป‰เป€เบงเบฅเบฒเบฅเปเบ–เป‰เบฒ.

เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบˆเบทเปˆเบงเปˆเบฒเปƒเบ™เบ›เบต 2018 เบšเปเบฅเบดเบชเบฑเบ” Qt เป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบขเบธเบ”เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ Qbs. Qbs เป„เบ”เป‰เบ–เบทเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบ›เบฑเบ™เบเบฒเบ™เบ—เบปเบ”เปเบ—เบ™เบชเปเบฒเบฅเบฑเบš qmake, เปเบ•เปˆเปƒเบ™เบ—เบตเปˆเบชเบธเบ”เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰ CMake เป€เบ›เบฑเบ™เบฅเบฐเบšเบปเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ•เบปเป‰เบ™เบ•เปเบชเปเบฒเบฅเบฑเบš Qt เปƒเบ™เป„เบฅเบเบฐเบเบฒเบง. เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ Qbs เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เป„เบ”เป‰เบชเบทเบšเบ•เปเปˆเป€เบ›เบฑเบ™เป‚เบ„เบ‡เบเบฒเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบˆเบฒเบเบŠเบธเบกเบŠเบปเบ™เปเบฅเบฐเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ—เบตเปˆเบชเบปเบ™เปƒเบˆ. เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบšเปเบฅเบดเบชเบฑเบ” Qt เบชเบทเบšเบ•เปเปˆเบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เป€เบžเบทเปˆเบญเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ.

เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เปƒเบ™เบˆเปเบฒเบ™เบงเบ™เป€เบงเบตเบŠเบฑเบ™เปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” JavaScript backend เปƒเบซเบกเปˆ, เป€เบŠเบดเปˆเบ‡เปเบ—เบ™เบ—เบตเปˆ QtScript, เป€เบŠเบดเปˆเบ‡เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบเบฒเบ”เบงเปˆเบฒเบฅเป‰เบฒเบชเบฐเป„เบซเบกเปƒเบ™ Qt 6. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบžเบดเบˆเบฒเบฅเบฐเบ™เบฒเบงเปˆเบฒเบšเปเปˆเป€เบ›เบฑเบ™เบˆเบดเบ‡เบ—เบตเปˆเบˆเบฐเบชเบทเบšเบ•เปเปˆเบฎเบฑเบเบชเบฒ QtScript เบ”เป‰เบงเบเบ•เบปเบงเป€เบฎเบปเบฒเป€เบญเบ‡เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบœเบนเบเบกเบฑเบ”เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เบเบฑเบš JavaScriptCore, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ•เบปเบ™เป€เบญเบ‡เบžเบฝเบ‡เบžเปเปเบฅเบฐเบซเบ™เบฒเปเบซเบ™เป‰เบ™เป„เบ”เป‰เบ–เบทเบเป€เบฅเบทเบญเบเป€เบ›เบฑเบ™เบžเบทเป‰เบ™เบ–เบฒเบ™เบชเปเบฒเบฅเบฑเบš backend เปƒเบซเบกเปˆ เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบ QuickJS JavaScript เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เป‚เบ”เบ Fabrice Bellard, เบœเบนเป‰เบ—เบตเปˆเบเปเปˆเบ•เบฑเป‰เบ‡เป‚เบ„เบ‡เบเบฒเบ™ QEMU เปเบฅเบฐ FFmpeg. เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเป€เบžเบฒเบฐเบ‚เบญเบ‡ ES2019 เปเบฅเบฐเบกเบตเบ„เบงเบฒเบกเป‚เบ”เบ”เป€เบ”เบฑเปˆเบ™เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฑเบš analogues เบ—เบตเปˆเบกเบตเบขเบนเปˆ (XS เป‚เบ”เบ 35%, DukTape เบซเบผเบฒเบเบเบงเปˆเบฒเบชเบญเบ‡เป€เบ—เบปเปˆเบฒ, JerryScript เบชเบฒเบกเป€เบ—เบปเปˆเบฒ, เปเบฅเบฐ MuJS เป€เบˆเบฑเบ”เป€เบ—เบปเปˆเบฒ).

เบˆเบฒเบเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ‚เบญเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบชเบฐเบ„เบดเบšเบ›เบฐเบเบญเบš, เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆเป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเปƒเบซเบกเปˆเบšเปเปˆเบ„เบงเบ™เบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™. เบœเบปเบ™เบœเบฐเบฅเบดเบ”เบเบฑเบ‡เบˆเบฐเบขเบนเปˆเปƒเบ™เบฅเบฐเบ”เบฑเบšเบ”เบฝเบงเบเบฑเบ™. เปƒเบ™เบšเบฑเบ™เบ”เบฒเบ„เบงเบฒเบกเปเบ•เบเบ•เปˆเบฒเบ‡, เบกเบตเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเป€เบ‚เบฑเป‰เบกเบ‡เบงเบ”เปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบˆเบฑเบเปƒเบซเบกเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ nulls, เป€เบŠเบดเปˆเบ‡เบชเบฒเบกเบฒเบ”เป€เบ›เบตเบ”เป€เบœเบตเบเบšเบฑเบ™เบซเบฒเปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบชเบฑเบ‡เป€เบเบ”เป€เบซเบฑเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเปƒเบŠเป‰ QtScript.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™