본문 바로가기
VisualStudio.C++.C#

Qt . 개요 . 포터블 개발환경 구축 .

by i.got.it 2025. 12. 29.

 

 

Qt 개요 

 

  • QtC++ 기반의 크로스플랫폼 애플리케이션 개발 프레임워크
  • GUI 뿐만 아니라, 네트워킹, 스레딩, 데이터베이스, XML/JSON 처리, OpenGL, 3D, 멀티미디어 등 애플리케이션 개발에 필요한 거의 모든 기능 제공
  • 운영체제 독립적 → Windows, macOS, Linux, Android, iOS 등에서 동일 코드로 실행 가능

 

 

Qt 구성 요소

  1. Qt Core
    • 기본 데이터 타입(QVector, QString 등)
    • 이벤트 루프(QEvent, QObject, signal/slot)
    • 스레딩, 파일/디렉토리, 시간, JSON/XML 처리
  2. Qt GUI / Widgets
    • QWidget 기반 GUI 컨트롤 제공
    • 버튼, 테이블, 리스트, 그림판, OpenGL Widget 등
    • QCustomPlot도 QWidget 기반 위젯으로 동작
  3. Qt Quick / QML
    • QML 기반 선언형 UI + JavaScript 로직
    • 모바일 앱, 터치 기반 UI에 적합
    • QML + C++ 연동 가능
  4. Qt Network / SQL / Multimedia 등
    • 네트워킹, 데이터베이스, 이미지/영상 처리, 사운드, 3D 처리 등 다양한 모듈

 

Qt 특징

  • Signal & Slot
    • 이벤트 기반 프로그래밍
    • 예: 버튼 클릭 → slot 함수 호출
  • 크로스플랫폼
    • 한 번 작성하면 여러 OS에서 실행 가능
  • 객체 지향
    • C++ 클래스 중심
    • QWidget, QObject 기반 상속 구조
  • 풍부한 위젯과 모듈
    • 기본 GUI 구성 요소 + 고급 기능(그래프, 3D, Web, 멀티미디어)

 

MS MFC 와의 비교. 

 

Qt는 MFC보다 더 현대적이고 유연한 GUI/이벤트/레이아웃 구조, 크로스플랫폼 지원, 풍부한 모듈 제공
MFC는 Windows 전용 레거시 앱에서는 여전히 강력하지만, 새로운 실시간/멀티채널/시각화 프로젝트에서는 Qt가 압도적으로 유리. 

 

 

그런데...

프로그램을 상용화 하지 않아도 되어 타인의  사용성을 고려하지 않고, 개인용도의 Windows 전용으로 빠르게 개발하고 유지할 목적 이라면 MFC 로도 충분하며 오히려 단순함이 좋음.  개인용 프로그램 예  : https://igotit.tistory.com/5074 


Qt는 “확장성, 크로스플랫폼, 모듈 활용”이 필요한 경우에는 유용하지만 그외 개인 활용에서는  MFC 기반으로 구현해도  매우 강력하나  MFC 에 익숙하지 않은 입문자라면  Qt 기반 실력 향상해두는 것도 유용함. 

 

 

아래 내용은 Qt 개발환경을 포터블로 구현 방법을 상세하게 정리함. 

 

왜 포터블로 구축함?

PC 나 노트북에 개발환경 구축하면 내 인생이 그 PC 에 종속되어 버림. 자유를 위해서 포터블 구축이 좋음. 집이든 회사든 심지어 차량 내부에서도 항상 내가 주도하는 상황이 됨. 

 

 

 

Qt 포터블 개발환경 SSD 폴더 구조  

 

Portable_Qt 에는 개발환경들 몰아두고, Qt 로 만들 프로젝트는 WORK_Qt 하위에 몰아둔다. 

컴파일러는 VC++ 이용할 것이므로 SSD 연결할 PC 에 Visual Studio 는 설치되어 있어야 하나 Qt 개발환경은 완전히 포터블 구성 달성됨. 

 

H:/
 ├─ Portable_Qt
 │   ├─ Qt
 │   ├─ Tools
 │   └─ Docs
 ├─ WORK_Qt

 

 

  • Qt : Qt SDK 본체
  • Tools : Qt Creator, 보조 툴
  • Docs : 메모 / 설정 기록

 

 

 

Qt 가입 

- Qt 설치 하려면 계정이 있어야 가능하다. 

- 가입주소 : https://login.qt.io/register 

 

 

Qt Installer 다운로드 및 설치 

다운로드 주소 : 본인 계정으로 로그인 해서 보이는 아래 클릭. 

 

 

 

다운로드한 설치 파일 예  : qt-unified-windows-x64-4.x.x-online.exe 

 

Qt 설치 과정 

- 앞에서 다운로드 받은 설치 파일 실행한다. 

- 설치 첫화면 

 

다음 클릭하여 로그인 창 나온다.  로그인하고 다음 클릭 하면 라이선스 문구 나온다(아래 화면). 

  

동의하고 개인 사용자임을 체크하고 다음 클릭. 

설치 경로  및 사용자 지정설치 선택 

기본 설정은 C:\Qt 이나 이를 USB SSD 경로로 한다. 

 

 

위 설치 옵션 중 "디자인도구" 는 Qt Creator 에 기본 포함되어 있는 Qt Designer 와는 다른 것이며 아래 같은 기능이다. 난 설치 안 함. 

 

  • 모바일 UI
  • 터치 UI
  • 화려한 애니메이션
  • 디자이너랑 협업
  • QML/Qt Quick 사용

 

위 화면에서 "사용자 지정 설치" 선택한 상태에서 다음 진행. 

 

 

위 선택은 기본 선택 상태임. 여기서 Qt6.10.1 을 펼쳐서 아래처럼 선택함. 즉 컴파일러를 Visual C++ 2022 사용하는 것. 

 

 

Additional Libraries 에 보면 재미난 것들이 많아 보이는데, 초기 설치 이후 나중에 추가 설치 가능하므로 이런 것들이 있구나 정도만 확인하고 다음 클릭. 

 

최종 설치 직전 화면 

 

설치 버튼 클릭하여 진행 시킨다. 

 

20분 내에 설치 완료됨. 

 

위 버튼 완료 클릭하면 Qt Creator 실행되어 아래처럼 보인다. 

 

 

 

Portable_Qt 에 설치된 파일들. 

 

 

qtcreator.exe 있는 경로 

- 바로가기 만들어서 스토리지 루트에 두면 편하게 실행가능. 

 

 

 

Qt Creator 로 첫 시험용 프로젝트 만들어보기 

 

Qt Creator 실행하여, 메뉴 : File -> New Project .. 클릭. 

 

프로젝트 타입 차이점 

Qt Quick Application (현대적, 모바일 스타일)
  • 특징: UI를 C++이 아닌 QML(JSON과 유사한 선언형 언어)로 만든다.  스마트폰 앱 같은 애니메이션과 터치 UI에 최적화.
  • 장점: 디자인이 매우 예쁘고 유연합니다.
  • 단점:  C++ 라이브러리 들과 UI 사이를 연결하는 '바인딩' 작업이 위젯 방식보다 조금 더 복잡. 데스크톱용 도킹 시스템 구현이 위젯보다 까다로움. 
  • 결론: 모바일 앱이나 화려한 그래픽 중심의 태블릿 UI를 만들 때 적합. 
Qt Quick Application (compat) (하위 호환용)
  • 특징: 최신 Qt 6 버전에서 이전 Qt 5 방식의 QML 기능을 사용해야 할 때 쓰는 '호환성 모드'
  • 결론: 신규 프로젝트에서는 거의 선택할 일이 없음. 

 

Qt Widgets Application 
  • 특징: 전통적인 C++ 중심의 개발 방식입니다. 윈도우 표준 컨트롤(버튼, 트리, 메뉴 등)을 사용.
  • 장점:
    • VC++/MFC와 가장 유사: Static Lib를 조립하고 관리하기에 가장 직관적입니다.
    • 성능: 대량의 실시간 데이터를 복잡한 로직으로 처리할 때 안정성이 뛰어납니다.
    • UI: 큰 버튼, 도킹 창(Dock), 트리 구조 등 만들기 용이. 
  • 결론: 엔진 중심의 데스크톱 앱에 최적.

 

위와 같이 선택하고 Choose.. 클릭. 

 

프로젝트이름과 생성할 폴더 지정. 

 

아래 예에서는 폴더 이름에는 프로젝트이름을 포함했는데,  프로젝트 이름과 동일한 폴더가 자동으로 생성되므로 아래처럼 하면 H:\WORK_Qt\helloQt\HelloQt  처럼 만들어진다. 

 

 

빌드시스템 선택

 

차이점 요약 

  • qmake: Qt 전용. 문법이 매우 쉽지만(텍스트 몇 줄), Qt 환경 밖(예: 순수 VS 프로젝트)에서는 쓰기 어려움. 예전에는 대세였으나 지금은 서서히 CMake에 자리를 내주고 있다.
  • CMake for Qt5 and Qt6: 프로젝트 내부에서 Qt 버전별 분기 처리를 해주는 템플릿인데, 굳이 이 복잡한 버전을 선택할 필요는 없음. 
  • CMake : 가장 범용적. VS2022에서도 바로 열 수 있고, Qt Creator에서도 완벽하게 작동.

Build System 기본 선택된 상태로  Next 클릭 

 

 

 

 

 

생성할 클래스들 이름과 base 클래스가  보인다. 기본 상태에서 Next 클릭.  

 

언어 번역 툴도 제공되나 보다 기본 상태에서 Next 클릭. 

 

 

기본 Debug 로 되어있던것을 Release 선택하고 Next 클릭. 

- 프로젝트 생성후에도 변경가능함. 

 

 

프로젝트 생성 최종 화면이다. 기본 상태에서 Finish 클릭. 

 

 

Finsh 버튼 클릭하면 기본 자동생성된 코드들이 보인다. 

 

 

코드 수정하지 않은 상태의 기본 실행상태 확인해보자.  메뉴 : Build -> Run 클릭한다. 

아래처럼 프로그램 실행된다. 

 

 

 

연관 

위 helloQt 프로젝트 상태에서 QCustomPlot 구현기본. 

 

Qt . QCustomPlot 개요 . 활용 기본 .

QCustomPlot Qt 기반 챠트 라이브러리 챠트 표현 예. QCustomPlot 다운받기 다운로드 주소 : https://www.qcustomplot.com/index.php/download 다운로드 사이트 방문해보면 아래처럼 다운로드 파일 3종이 있는데 소스,

igotit.tistory.com

 

 

VSCode 에서 Qt 개발환경 구축도 가능하나, 실제 확인해보니 작업성 향상에 도움 안됨.  

 

Qt . VSCode 에서 개발하기

VSCode Qt 확장 설치 - 확장 검색에서 여러 개 보이나 Qt C++ EXtension Pack 설치하면 됨. Qt Widgets / Qt Quick 둘 다 가능CMake 기반 빌드Qt Designer 연동디버깅 지원필요한 것들(CMake Tools 등) 자동 설치됨 C/C++ Ext

igotit.tistory.com

 

 

 

 

Qt . install build . 지정 폴더에 exe 에 필요한 dll 복사 자동화

Qt 로 빌드한 exe 실행에 필요한 dll (Qt 관련 dll 및 기타 dll )들을 1개의 폴더에 몰기 자동화 CMakeLists.txt# 1. install 폴더 경로를 프로젝트 폴더 하위로 강제 지정if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) set

igotit.tistory.com

 

 

 


첫 등록 : 2025.12.29

최종 수정 : 2026.04.25

단축 주소 : https://igotit.tistory.com/6347


 

댓글



비트코인




            암호화폐/외환/나스닥/골드          
       
현물 |선물 인버스 |선물 USDT , bybit MT5               프랍 트레이딩. MT4,MT5