Qt Creator 5.0 ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๋ฆด๋ฆฌ์Šค

Qt ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํฌ๋กœ์Šค ํ”Œ๋žซํผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ƒ์„ฑํ•˜๋„๋ก ์„ค๊ณ„๋œ Qt Creator 5.0 ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์ด ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” C++์˜ ํด๋ž˜์‹ ํ”„๋กœ๊ทธ๋žจ ๊ฐœ๋ฐœ๊ณผ JavaScript๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์ •์˜ํ•˜๊ณ  ์ธํ„ฐํŽ˜์ด์Šค ์š”์†Œ์˜ ๊ตฌ์กฐ์™€ ๋งค๊ฐœ๋ณ€์ˆ˜๊ฐ€ CSS์™€ ๊ฐ™์€ ๋ธ”๋ก์œผ๋กœ ์ง€์ •๋˜๋Š” QML ์–ธ์–ด ์‚ฌ์šฉ์„ ๋ชจ๋‘ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„์ „ ๋ฒˆํ˜ธ์˜ ์ค‘์š”ํ•œ ๋ณ€๊ฒฝ์€ ๊ธฐ๋Šฅ ๋ณ€๊ฒฝ(Qt Creator 5, Qt Creator 6 ๋“ฑ)์ด ์žˆ๋Š” ๋ฆด๋ฆฌ์Šค์—์„œ ๋ฒ„์ „์˜ ์ฒซ ๋ฒˆ์งธ ์ˆซ์ž๊ฐ€ ๋ณ€๊ฒฝ๋˜๋Š” ์ƒˆ๋กœ์šด ๋ฒ„์ „ ํ• ๋‹น ์ฒด๊ณ„๋กœ์˜ ์ „ํ™˜๊ณผ ๊ด€๋ จ๋ฉ๋‹ˆ๋‹ค.

Qt Creator 5.0 ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๋ฆด๋ฆฌ์Šค

์ƒˆ ๋ฒ„์ „์—์„œ:

  • Clang Server(clangd) ์บ์‹ฑ ์„œ๋น„์Šค๋ฅผ C ๋ฐ C++ ์ฝ”๋“œ ๋ชจ๋ธ์˜ ๋ฐฑ์—”๋“œ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์‹คํ—˜์  ๊ฐ€๋Šฅ์„ฑ์ด ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. LSP(์–ธ์–ด ์„œ๋ฒ„ ํ”„๋กœํ† ์ฝœ) ์‚ฌ์šฉ ๋•๋ถ„์— libclang ๊ธฐ๋ฐ˜ ์ฝ”๋“œ ๋ชจ๋ธ์„ ๋Œ€์ฒดํ•˜๋Š” ๋ฐ ์„ ํƒ์ ์œผ๋กœ ์ƒˆ ๋ฐฑ์—”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ ์•„์ง ๋ชจ๋“  ๊ธฐ๋Šฅ์ด ๊ตฌํ˜„๋˜์ง€๋Š” ์•Š์•˜์Šต๋‹ˆ๋‹ค. ํ™œ์„ฑํ™”๋Š” "๋„๊ตฌ > ์˜ต์…˜ > C++ > Clangd" ๋ฉ”๋‰ด์˜ "clangd ์‚ฌ์šฉ" ์˜ต์…˜์„ ํ†ตํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค.
  • Docker ์ปจํ…Œ์ด๋„ˆ์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋นŒ๋“œํ•˜๊ณ  ์‹คํ–‰ํ•˜๊ธฐ ์œ„ํ•œ ์‹คํ—˜์  ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ์€ ํ˜„์žฌ Linux ํ™˜๊ฒฝ๊ณผ CMake ๋นŒ๋“œ ์‹œ์Šคํ…œ์ด ์žˆ๋Š” ํ”„๋กœ์ ํŠธ์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด "๋„์›€๋ง > ํ”Œ๋Ÿฌ๊ทธ์ธ ์ •๋ณด" ๋ฉ”๋‰ด๋ฅผ ํ†ตํ•ด ์‹คํ—˜์šฉ ํ”Œ๋Ÿฌ๊ทธ์ธ์— ๋Œ€ํ•œ ์ง€์›์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•˜๋ฉฐ, ๊ทธ ํ›„์—๋Š” "Docker" ๋นŒ๋“œ ์žฅ์น˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žฅ์น˜ ์„ค์ •์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
  • C++ ์–ธ์–ด์˜ ์ฝ”๋“œ ๋ชจ๋ธ์— ๋ˆ„์ ๋œ ์ˆ˜์ • ์‚ฌํ•ญ์ด ์ ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐœ์ฒด ์ด๋ฆ„์„ ๋ฐ”๊ฟ€ ๋•Œ ํ”„๋กœ์ ํŠธ์™€ ์ง์ ‘ ๊ด€๋ จ์ด ์—†๋Š” ํŒŒ์ผ(์˜ˆ: Qt ํ—ค๋” ํŒŒ์ผ)์˜ ์ž๋™ ์„ ํƒ์ด ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ".ui" ๋ฐ ".scxml" ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์žฌ์ปดํŒŒ์ผ ์—†์ด ์ฝ”๋“œ ๋ชจ๋ธ์— ์ฆ‰์‹œ ๋ฐ˜์˜๋ฉ๋‹ˆ๋‹ค.
  • QML์˜ ์ฝ”๋“œ ๋ชจ๋ธ์ด Qt 6.2๋กœ ์—…๋ฐ์ดํŠธ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • LSP(Language Server Protocol) ์„œ๋ฒ„ ๊ตฌํ˜„์—๋Š” Qt Creator์˜ ์ž‘์—… ์ง„ํ–‰ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์•Œ๋ฆผ ํ‘œ์‹œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์„œ๋ฒ„์—์„œ ์ œ๊ณตํ•˜๋Š” ์ฝ”๋“œ ์กฐ๊ฐ ํ‘œ์‹œ์— ๋Œ€ํ•œ ์ง€์›๋„ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ํŽธ์ง‘ ๋ชจ๋“œ๋กœ ์ „ํ™˜ํ•  ํ•„์š” ์—†์ด ํ”„๋กœ์ ํŠธ ๋ชจ๋“œ์—์„œ CMake ๋ฐ ์ปดํŒŒ์ผ ๊ฒฐ๊ณผ๋ฅผ ํ‘œ์‹œํ•˜๋Š” ๊ธฐ๋Šฅ์„ ํฌํ•จํ•˜์—ฌ CMake ๊ธฐ๋ฐ˜ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ ๋„๊ตฌ๊ฐ€ ํฌ๊ฒŒ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ํ”„๋กœ์ ํŠธ ์„ค์ •์— ์ž„์‹œ ๋นŒ๋“œ ๋””๋ ‰ํ„ฐ๋ฆฌ ์‚ฌ์šฉ์ด ์ค‘์ง€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ ๋ฐ ํ—ค๋”๊ฐ€ ํฌํ•จ๋œ ํŒŒ์ผ ๊ทธ๋ฃน ๋ถ„๋ฆฌ๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•˜๋Š” ์˜ต์…˜์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ ๊ธฐ๋ณธ ์‹คํ–‰ ํŒŒ์ผ์„ ๊ฒฐ์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์ด์ „์—๋Š” ๋ชฉ๋ก์˜ ์ฒซ ๋ฒˆ์งธ ์‹คํ–‰ ํŒŒ์ผ์ด ์„ ํƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค). ์‚ฌ์šฉ์ž ์ •์˜ ๋ช…๋ น ์‹คํ–‰ ์ž‘์—…์— ๋งคํฌ๋กœ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์„ ๋กœ๋“œํ•  ๋•Œ ์†๋„ ์ €ํ•˜๋ฅผ ์—†์• ๊ธฐ ์œ„ํ•œ ์ž‘์—…์ด ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Qbs ํˆดํ‚ท์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ ๋„๊ตฌ๊ฐ€ Qbs 1.20์„ ์‚ฌ์šฉํ•˜๋„๋ก ์ด์ „๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ARM ์•„ํ‚คํ…์ฒ˜์— ๋Œ€ํ•œ MSVC ๋„๊ตฌ ํ‚คํŠธ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • Android 12์— ๋Œ€ํ•œ ์ง€์›์ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค.
  • M1 ์นฉ์ด ์žฅ์ฐฉ๋œ Apple ์ปดํ“จํ„ฐ์—์„œ Intel ํ”„๋กœ์„ธ์„œ์šฉ Qt Creator ๋นŒ๋“œ ์‹คํ–‰์— ๋Œ€ํ•œ ์ง€์›์ด ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

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