GCC ๊ธฐ๋ฐ˜ Rust ์–ธ์–ด์šฉ ์ปดํŒŒ์ผ๋Ÿฌ ๊ฐœ๋ฐœ ์ง„ํ–‰ ์ƒํ™ฉ

GCC ์ปดํŒŒ์ผ๋Ÿฌ ์„ธํŠธ ๊ฐœ๋ฐœ์ž์˜ ๋ฉ”์ผ๋ง ๋ฆฌ์ŠคํŠธ๋Š” GCC ๊ธฐ๋ฐ˜์˜ Rust ์–ธ์–ด ์ปดํŒŒ์ผ๋Ÿฌ ๊ตฌํ˜„์œผ๋กœ GCC ํ”„๋ŸฐํŠธ์—”๋“œ gccrs๋ฅผ ๊ฐœ๋ฐœํ•˜๋Š” Rust-GCC ํ”„๋กœ์ ํŠธ์˜ ์ƒํƒœ์— ๋Œ€ํ•œ ๋ณด๊ณ ์„œ๋ฅผ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ์˜ฌํ•ด 1.40์›”๊นŒ์ง€ gccrs์— Rust 6 ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ์ง€์›ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ๋นŒ๋“œํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ํ‘œ์ค€ Rust ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ libcore, liballoc ๋ฐ libstd์˜ ์„ฑ๊ณต์ ์ธ ์ปดํŒŒ์ผ ๋ฐ ์‚ฌ์šฉ์„ ๋‹ฌ์„ฑํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค. ํ–ฅํ›„ XNUMX๊ฐœ์›” ๋‚ด์— ๋นŒ๋ฆผ ๊ฒ€์‚ฌ๊ธฐ๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  proc_macro ํŒจํ‚ค์ง€๋ฅผ ์ง€์›ํ•  ๊ณ„ํš์ž…๋‹ˆ๋‹ค.

GCC ๋ณธ์ฒด์— gccrs๋ฅผ ํฌํ•จ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์ค€๋น„ ์ž‘์—…๋„ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. GCC์—์„œ gccrs๋ฅผ ์ฑ„ํƒํ•˜๋ฉด Rustc ์ปดํŒŒ์ผ๋Ÿฌ๋ฅผ ์„ค์น˜ํ•  ํ•„์š” ์—†์ด GCC ํˆดํ‚ท์„ ์‚ฌ์šฉํ•˜์—ฌ Rust ํ”„๋กœ๊ทธ๋žจ์„ ์ปดํŒŒ์ผํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ†ตํ•ฉ์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•œ ๊ธฐ์ค€ ์ค‘ ํ•˜๋‚˜๋Š” ๊ณต์‹ ํ…Œ์ŠคํŠธ ๋ชจ์Œ๊ณผ ์‹ค์ œ ํ”„๋กœ์ ํŠธ๋ฅผ Rust๋กœ ์„ฑ๊ณต์ ์œผ๋กœ ์ปดํŒŒ์ผํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋“ค์€ ํ˜„์žฌ GCC ์‹คํ—˜ ๋ถ„๊ธฐ์˜ ์ค€๋น„ ์ฃผ๊ธฐ ๋‚ด์—์„œ ์˜๋„ํ•œ ๋ชฉํ‘œ๋ฅผ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ gccrs๋Š” ๋‚ด๋…„ 13์›”๋กœ ์˜ˆ์ •๋œ GCC XNUMX ๋ฆด๋ฆฌ์Šค์— ํฌํ•จ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€