태그: 크로스플랫폼
6편
-
Ninja vs Make, 그리고 CMake·Meson: 무엇이 실제로 빌드를 빠르게 하는가
Ninja와 Make는 어디서 속도 차이가 나고 어디서는 안 나는지, CMake·Meson은 그 위에서 어떤 역할을 하는지 정리합니다. 명령줄 변경 감지, 헤더 의존성, 병렬 기본값, 잡 풀, jobserver까지 실무 선택 기준을 다룹니다.
-
C++ 크로스 플랫폼 기초: 플랫폼 감지 매크로, std::filesystem 경로, 동적 로딩 추상화
C++ 크로스 플랫폼 코드 기초: _WIN32/__linux__/__APPLE__ 감지와 기능 감지(__has_include), std::filesystem 경로, LoadLibrary/dlopen 추상화, 플랫폼 추상화 레이어, 타입 크기·엔디안·구조체 정렬 문제를 다룹니다.
-
C++ 크로스 플랫폼 빌드: MinGW·iOS·Android NDK 툴체인 파일과 CPack 패키징
C++ 크로스 플랫폼 빌드: MinGW·iOS·Android NDK용 CMake 툴체인 파일, CPack 패키징(DEB/RPM/NSIS/DMG)과 런타임 검색 경로, 심볼 버전, CI 매트릭스, 빌드·링크·패키징 에러 해결을 다룹니다.
-
C++ 크로스 플랫폼 테스트: Win/Linux/macOS CI 매트릭스, Docker 환경, 엔디안 검증
Windows에서는 되는데 Linux CI에서만 실패하는 C++ 테스트를 잡는 방법입니다. GitHub Actions·GitLab CI 매트릭스, Docker와 ARM64 에뮬레이션 테스트, 경로 구분자·정수 크기·엔디안 차이 검증, dyld 라이브러리 로드 에러를 다룹니다.
-
C++ CMake 고급 | 멀티 타겟·외부 라이브러리 관리 (대규모 프로젝트 빌드)
라이브러리를 추가할 때마다 빌드가 깨지는 대규모 프로젝트를 타겟 단위 CMake로 정리하는 방법을 다룹니다. PUBLIC·PRIVATE·INTERFACE 전파, Generator Expression, find_package와 FetchContent 선택, undefined reference 해결도 설명합니다.
-
Qt로 C++ 첫 GUI 만들기: CMake 프로젝트, 위젯과 레이아웃, 시그널과 슬롯
C++로 창을 띄우고 버튼을 넣는 첫 단계를 Qt와 CMake로 밟아 봅니다. 레이아웃 배치, 람다와 멤버 함수로 시그널·슬롯 연결, Qt5와 Qt6 문법 차이를 예제로 설명하고 Could not find Qt6, vtable 링크 에러, 슬롯이 호출되지 않는 문제도 다룹니다.