Qt ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ฌ ํฌ๋ก์ค ํ๋ซํผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์์ฑํ๋๋ก ์ค๊ณ๋ ํตํฉ ๊ฐ๋ฐ ํ๊ฒฝ Qt Creator 7.0์ด ์ถ์๋์์ต๋๋ค. ์ด๋ C++์ ํด๋์ ํ๋ก๊ทธ๋จ ๊ฐ๋ฐ๊ณผ JavaScript๋ฅผ ์ฌ์ฉํ์ฌ ์คํฌ๋ฆฝํธ๋ฅผ ์ ์ํ๊ณ ์ธํฐํ์ด์ค ์์์ ๊ตฌ์กฐ์ ๋งค๊ฐ๋ณ์๊ฐ CSS์ ๊ฐ์ ๋ธ๋ก์ผ๋ก ์ง์ ๋๋ QML ์ธ์ด ์ฌ์ฉ์ ๋ชจ๋ ์ง์ํฉ๋๋ค.
์ ๋ฒ์ ์์:
- "์ ํ์ผ ๋๋ ํ๋ก์ ํธ" ๋ฉ๋ด ํญ๋ชฉ์ "์ ํ์ผ"๊ณผ "์ ํ๋ก์ ํธ"๋ผ๋ ๋ ๊ฐ์ ๋ณ๋ ๋ํ ์์๋ก ๊ตฌ๋ถ๋ฉ๋๋ค.
- Qt ์จ๋ผ์ธ ์ค์น ํ๋ก๊ทธ๋จ์ ์ฌ์ฉํ๋ ์ฌ์ฉ์์๊ฒ๋ Qt์ ์์ ๋ฒ์ ์ด ์ ๊ณต๋๋ค๋ ์ ๋ณด๊ฐ ์ ๊ณต๋ฉ๋๋ค. "์ต์ > ํ๊ฒฝ > ์ ๋ฐ์ดํธ" ์น์ ์์ ์ ๋ฐ์ดํธ ์๋ฆผ ํ์๋ฅผ ๊ตฌ์ฑํ ์ ์์ต๋๋ค.
- C++ ์ธ์ด์ ์ฝ๋ ๋ชจ๋ธ์ด LLVM 14๋ก ์ ๋ฐ์ดํธ๋์์ผ๋ฉฐ ๊ธฐ๋ณธ์ ์ผ๋ก LSP(Language Server Protocol)๋ฅผ ์ง์ํ๋ Clangd ๋ฐฑ์๋๋ฅผ ์ฌ์ฉํ๋๋ก ์ ํ๋์์ต๋๋ค. "๋๊ตฌ > ์ต์ > C++ > Clangd" ๋ฉ๋ด๋ฅผ ํตํด ์ด์ ๋ฐฑ์๋๋ฅผ ๋๋๋ฆด ์ ์์ต๋๋ค. ์ฌ๊ธฐ์ ํ๋ก์ ํธ ์ฝ๋ ์ธ๋ฑ์ฑ์ ์ํ Clangd ์ฌ์ฉ์ ๋นํ์ฑํํ ์๋ ์์ง๋ง ๊ตฌ๋ฌธ ๊ฐ์กฐ ๋ฐ ์ ๋ ฅ ์๋ ์์ฑ์๋ ๊ณ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ClangFormat ํ๋ฌ๊ทธ์ธ ์ค์ ์ด ์ผ๋ฐ ์คํ์ผ ์ค์ ์น์ ์ผ๋ก ์ด๋๋์์ผ๋ฉฐ ๋ณ๋์ ํญ์ผ๋ก ํ์๋ฉ๋๋ค.
- ์ต์ Qt ๋ถ๊ธฐ์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐ์ํ๋๋ก QML ํ์ ๊ตฌํ์ด ์ ๋ฐ์ดํธ๋์์ต๋๋ค.
- CMake๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ก์ ํธ๋ฅผ ์ค์ ํ๋ ํ์ด์ง๊ฐ ์๋กญ๊ฒ ๋์์ธ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด ํ๋ก์ ํธ ๋น๋ ์คํฌ๋ฆฝํธ๋ฅผ ๊ตฌ์ฑํ๋ ๋์ CMake ์คํ์ ์ค์งํ๊ธฐ ์ํด "CMake ์ค์ง" ๋ฒํผ์ ์ถ๊ฐํ์ต๋๋ค. ํ๋ก์ ํธ๊ฐ ์ด๋ฏธ ๊ตฌ์ฑ๋ ๊ฒฝ์ฐ์๋ CMake๋ฅผ ๋ค์ ์คํํ์ฌ ๊ตฌ์ฑ์ ์ ๋ฐ์ดํธํ ์ ์๋ ๊ธฐ๋ฅ์ด ์ ๊ณต๋์์ต๋๋ค. ์ด๊ธฐ ๋ฐ ํ์ฌ ํ๋ก์ ํธ ๊ตฌ์ฑ์ ๋ํ CMake ๋ณ์๋ ๋ถ๋ฆฌ๋ฉ๋๋ค. ์ฒซ ๋ฒ์งธ ๊ฒฝ์ฐ ๋ณ์๋ CMakeLists.txt.use ํ์ผ์์ ์ ์๋์ด ์ฒซ ๋ฒ์งธ ์ค์ ์ค์ ์ฌ์ฉ๋๋ฉฐ ๋ ๋ฒ์งธ ๊ฒฝ์ฐ์๋ CMake file-api json์ ํตํด ๋ด๋ณด๋ธ ๋ณ์์ ๋๋ค. .cmake/api/v1/reply ๋๋ ํ ๋ฆฌ๊ฐ ์ ์๋์ด ์์ต๋๋ค.
- ์ฌ์ฉ ๊ฐ๋ฅํ ๋๊ตฌ์ ์๋ ๊ฐ์ง ๊ธฐ๋ฅ์ด ํฅ์๋๊ณ ์์ ์ ๋ถํ์ํ ์ปดํ์ผ๋ฌ ํธ์ถ ์๊ฐ ์ค์ด๋ค์ด ์ผ๋ถ ํ๊ฒฝ์์ Qt Creator์ ์์ ์๊ฐ์ด ๋จ์ถ๋์์ต๋๋ค.
- ์ ํ๋ก์ ํธ ๋ง๋ฒ์ฌ๋ C++17์ด C++ ํ์ค์ผ๋ก ์ ์๋์๋์ง ํ์ธํฉ๋๋ค.
- macOS ํ๋ซํผ์์๋ ์ด๋์ด ํ ๋ง์ ๋ํ ์์คํ ์ค์ ์ด ๊ณ ๋ ค๋ฉ๋๋ค. macOS ๋น๋์ Docker์ ๋ํ ์คํ์ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- Android ํ๋ซํผ์ ๊ฒฝ์ฐ ๊ธฐ๋ณธ NDK๋ฅผ ์ ํํ๋ ์ต์ ์ด ์ถ๊ฐ๋์์ผ๋ฉฐ NDK ํ๋ซํผ ๊ฐ์ง ๊ธฐ๋ฅ์ด ํฅ์๋์์ต๋๋ค.
- Linux ํ๋ซํผ์ ๊ฒฝ์ฐ Wayland ํ๋กํ ์ฝ์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ Qt์ฉ ๋ฐฑ์๋๊ฐ ํฌํจ๋์ด ์์ต๋๋ค. ๋ฐฑ์๋๋ฅผ ํ์ฑํํ๋ ค๋ฉด ์์ํ๊ธฐ ์ ์ ํ๊ฒฝ ๋ณ์ QT_QPA_PLATFORM=wayland๋ฅผ ์ค์ ํด์ผ ํฉ๋๋ค.
์ถ์ฒ : opennet.ru