터미널에서 CMake로 Qt 프로젝트 빌드 시 Qt5Config.cmake 파일을 찾지 못하는 문제 해결
Qt Creator를 사용할 때는 정상적으로 빌드되지만, 터미널에서 직접 CMake를 통해 빌드를 시도하면 다음과 같은 오류가 발생할 수 있습니다:
CMake Error at CMakeLists.txt:3 (find_package):
Could not find a package configuration file provided by "Qt5" (requested
version 5.15) with any of the following names:
Qt5Config.cmake
qt5-config.cmake
...
7월 3일 17:47에 게시됨
리눅스와 VSCode를 이용한 C++ 프로젝트 개발 환경 구축 및 CMake 활용
C/C++ 컴파일 과정
C++ 소스 코드가 실행 가능한 프로그램으로 변환되는 과정은 여러 단계로 나뉩니다. 각 단계는 특정 역할을 수행하며, 이해하는 것이 빌드 시스템을 다루는 데 중요합니다.
1. 전처리 (Pre-compilation)
전처리기는 소스 파일(.cpp)과 헤더 파일(.h)을 처리하여 전처리된 파일(.i)을 생성합니다. 이 과정에서 #include, #define과 같은 전처리 지시어를 ...
7월 3일 17:03에 게시됨
pugixml을 활용한 XML 데이터 처리 기법
XML 처리 라이브러리 pugixml 소개
pugixml은 경량이며 고성능의 C++ 기반 XML 파서로, 구조화된 데이터를 효율적으로 읽고 쓸 수 있도록 설계되었습니다. 주요 특징은 다음과 같습니다:
DOM 유사 인터페이스 제공 — 트리 탐색 및 수정에 용이
빠른 비검증 파싱 속도 — 대용량 파일 처리에 적합
XPath 1.0 지원 — 복잡한 노드 접근 가능
유니코드 완전 지원 — 인 ...
6월 30일 04:03에 게시됨
단목 SLAM의 자세 추정 모듈 구현 시작하기 (1일차)
기초 구성 및 이미지 로드 시스템 설계
이 글에서는 단목 카메라 기반의 시각적 자세 추정(VO, Visual Odometry) 모듈을 처음부터 직접 구현하는 과정을 기록합니다. 이번 단계에서는 설정 파일 읽기, 이미지 경로 관리, 그리고 이미지 데이터를 로드하는 기본 클래스를 작성합니다.
1. 설정 파일 파싱 (YAML 형식)
설정 정보는 .yaml 파일에 저장되며, OpenCV의 FileSto ...
6월 28일 17:23에 게시됨
CANdevStudio 프로젝트 시작하기
CANdevStudio 프로젝트 튜토리얼
1. 프로젝트 디렉토리 구조
CANdevStudio는 CAN 버스 시뮬레이션을 위한 개발 도구입니다. 프로젝트의 디렉토리 구조는 다음과 같이 구성되어 있습니다:
CANdevStudio/
├── CMakeLists.txt
├── README.md
├── src/
│ ├── main.cpp
│ ├── CanBusAdapter.cpp
│ ├── CanBusAdapter.h
│ ├── ...
├── include/
│ ├── CanBusAdapter ...
6월 26일 18:54에 게시됨
VSCode 기반 산업용 C++ 개발 환경의 완전한 설정 방법
초기 프로젝트 구조 생성
CMake는 현대 산업급 C++ 프로젝트에서 가장 널리 사용되는 빌드 시스템입니다. 적절한 디렉터리 구조(예: src, include, test, build)를 갖춘 프로젝트 템플릿은 코드의 가독성과 유지보수성을 크게 향상시킵니다. 이 구조는 소스 파일, 헤더 파일, 단위 테스트 및 빌드 출력을 명확히 분리하여 협업에 유리합니다.
정적 분석 통합 (clang-tidy)
...
6월 24일 05:55에 게시됨
CMake 주요 명령어 정리
명령어
cmake_minimum_required
# 최소 호환 버전 지정
cmake_minimum_required(VERSION 3.22)
project
# 버전 번호와 설정 파일 추가
project(step_base VERSION 1.1)
project() 명령어가 호출되면, CMake는 내부적으로 step_base_VERSION_MAJOR와 step_base_VERSION_MINOR 변수를 정의합니다.
add_executable
# 소스 코드 파일을 지정하여 실행 파일 생성
add_ex ...
6월 12일 21:28에 게시됨
CMake 기초: 멀티플랫폼 빌드 도구 입문
CMake 개요
C/C++ 개발자라면 한 번쯤 겪어봤을 것이다. 오픈소스 라이브러리를 직접 빌드하려 할 때, Visual Studio 버전 차이로 인해 무수한 오류에 마주치고, 결국 포기하는 경험. 이런 문제는 프로젝트의 확산에도 큰 장애물이 된다.
특히 크로스플랫폼 개발 환경에서는 더욱 심각하다. Windows에서 개발한 후 Ubuntu 서버로 배포할 때, 플랫폼별로 별도의 빌드 스크립 ...
6월 12일 17:42에 게시됨
Git 커밋 자동화 및 동적 라이브러리 의존성 해결법
소스 코드 변경 사항 일괄 스테이징 전략
로컬 개발 환경에서 원격 저장소의 코드를 가져온 후 수정 작업을 수행할 경우, 변경된 파일들을 개별적으로 지정을 해야 한다는 오해가 종종 있습니다. 대량의 파일을 하나씩 추가하는 방식은 효율성이 떨어지며, 실수가 발생하기 쉽습니다.
# 비효율적인 단계별 추가 방식
$ git add module_alpha.py
$ git add config_settings ...
6월 11일 19:51에 게시됨
libpng을 CMake와 Visual Studio 2015로 빌드하고 이미지 처리 예제 사용하기
빌드 전 준비 사항
libpng를 컴파일하기에 앞서, 우선 zlib이 정상적으로 빌드되어 있어야 하며, 해당 라이브러리가 개발 환경에 포함되어야 합니다. libpng는 내부적으로 zlib을 사용하여 압축 데이터를 처리하므로, 반드시 zlib의 헤더 파일과 라이브러리(.lib)가 CMake 구성 단계에서 인식될 수 있도록 설정되어야 합니다.
소스 코드 다운로드 및 구조 확인
libpng 공 ...
6월 11일 17:23에 게시됨