한국어
Qt
 

2018년 Qt는 기존 빌드 시스템인 qmake 와 CMake 에 집중한다며 qbs를 포기하기로 발표하였다. 지원을 올해말까지(2019년) 한정하였는데 그 시점을 얼마 남겨두지 않은 시점에서 qbs에 대해서 다뤄보려한다.

공식 기사 : https://www.qt.io/blog/2018/10/29/deprecation-of-qbs

 

이 시점에 qbs에 대해 다루는 이유는 qbs가 가진 장점이 분명히 있기 때문이다. (비록 qt에서 버리기로 발표하였지만...) qbs프로젝트가 어떻게 흘러갈지 모르겠지만 독자적인 오픈소스프로젝트로 성장해 나갈 가능성도 있다고 본다.

 

Qbs는 다음과 같은 장점 및 특징이 있다.

  • 쉬운 언어를 사용
  • 플랫폼 및 프로그래밍 언어에 독립
  • 정확하고 빠른 증분 빌드
  • 확장 가능한 아키텍처
  • IDE에 쉽게 통합

 

Qbs소개

초기 qmake를 개선, 대체할 목적으로 시작된 Qt Build Suite, 즉 qbs ("Cubes"로 발음) 프로젝트는 다양한 플랫폼에서 소프트웨어 프로젝트의 빌드 프로세스를 편리하게 관리하도록 설계된 빌드 자동화 도구이다. (qbs사용법을 보면 yocto프로젝트의 레시피 작성 컨셉과 비슷한 느낌이 든다.)

 

qmake와 달리 qbs는 Qt 버전과 연결되어 있지 않으며 프로그래밍 언어, 툴킷 또는 사용 된 라이브러리에 관계없이 모든 소프트웨어 프로젝트에 사용할 수 있으며 커머셜 또는 LGPL 오픈소스 라이센스로 사용할 수 있다.

 

Qbs는 프로젝트 파일의 정보를 기반으로 응용 프로그램을 빌드한다. 프로젝트파일(*.qbs)은 최근 많은 Qt 프로젝트에서 사용되는 QML 언어로 작성된다. 

QML은 간결하고 배우기 쉽고 직관적인 언어이긴 하지만 qbs의 QML 아이템들의 사용법등을 익히려면 초기 어느정도 학습기간이 요구된다. 

 

다음은 QtCreator에서 생성한 가장 일반적인 형태의 프로젝트 파일인데 간단한 프로젝트여서 그런지 실제로 굉장히 심플한 느낌이다.

import qbs

CppApplication {
    consoleApplication: true
    files: "main.c"

    Group {     // Properties for the produced executable
        fileTagsFilter: "application"
        qbs.install: true
        qbs.installDir: "bin"
    }
}

 

각 프로젝트 파일은 하나의 project와 하나이상의 product를 포함 할 수있다. 이 프로젝트파일은 product에서 파생한 CppApplication을 정의한 모습이다.

 

Qbs 설치방법

Qbs 는 Windows, macOS, Linux 및 FreeBSD에서 사용할 수 있으며 Qt 인스톨러로 Qt Creator를 설치했다면 Qt Creator의 bin 디렉토리에서 qbs 실행 파일을 찾을 수 있다.

 

사전 빌드된 Qbs만을 설치하려면 다음과 같은 방법으로 가능하다.

 

Windows 용 바이너리 (x86 및 x64)는 다음 링크 페이지에서 제공한다.

https://download.qt.io/official_releases/qbs/

 

macOS에서는 MacPorts 또는 Homebrew 패키지 관리자를 사용하여 편리하게 설치할 수 있다.

brew install qbs

or

port install qbs

 

Linux 에서는 배포판의 패키지 관리 시스템을 통해 사용할 수 있다.(다음은 우분투에서 패키지를 설치하는 방법이다.)

sudo apt install qbs

 

다음은 qbs의 공식 저장소이다.

https://code.qt.io/cgit/qbs/qbs.git

 

공식 저장소 미러

https://github.com/qbs/qbs

 

다음 글에서 실제 활용법을 소개 하도록 하겠다.

번호 제목 글쓴이 날짜 조회 수
공지 Qt프로그래밍(QtQuick) Beginner를 위한 글 읽는 순서 운영자 2019.01.05 85845
20 Qt Creator 에서 GitHub Copilot 사용하기 file makersweb 2024.04.13 124
19 클라우드용 Qt file makersweb 2024.01.16 627
18 QMake 프로젝트를 CMake 프로젝트로 변환 with qmake2cmake makersweb 2022.09.17 997
17 qbs 사용 방법(Helloworld) file makersweb 2019.10.23 3094
16 Qt Creator에서 Qt의존성 라이브러리 자동복사하기 file makersweb 2019.10.19 2162
15 Windows에서 Qt 설치 따라하기 file makersweb 2019.10.14 30869
14 Qbs 프로젝트를 정의하기 위해 사용되는 몇가지 중요한 아이템들 file makersweb 2019.10.13 296
» Qbs에 대한 소개와 설치하는 방법 makersweb 2019.10.09 1368
12 [Qt News] Qt6 Git 개발 초기 단계 시작하기 j2doll 2019.08.02 2329
11 QML, 이미지, 폰트등을 바이너리 리소스로 만들기 makersweb 2019.06.24 3503
10 Qt Creator에서 임베디드 장치로 deploy설정(Custom Process Step) file makersweb 2019.06.15 2200
9 QtInstallerFramework로 온라인 설치프로그램(Online Installer)만드는 방법 [4] file makersweb 2019.05.28 6255
8 리눅스에서 Qt4.8기반 어플리케이션의 한글입력 file makersweb 2018.11.29 2434
7 Qt Installer Framework - 패키징, 설치프로그램 제작 file makersweb 2018.10.14 11662
6 Qml 어플리케이션 정적 빌드 file makersweb 2018.07.27 2136
5 Qt Bluetooth 관련 기능 확인 사항 makersweb 2018.07.10 763
4 Windows에서 라즈베리파이3 Qt 어플리케이션 개발 및 원격 실행 file makersweb 2018.02.23 6075
3 Windows환경에서 mingw로 Qt 5.10 정적(static)빌드 file makersweb 2018.02.01 5692
2 Qt 3D Studio 시작하기 file makersweb 2018.01.11 3821
1 Ubuntu Linux에서 Qt Creator 설치 file makersweb 2016.03.06 10667