태그: debugging
3편
-
CMake 에러 해결: 컴파일러·find_package·링커·캐시 문제를 단계별로 좁히는 법
CMake 에러를 configure·generate·build·실행 단계로 나눠 원인을 좁히는 방법을 정리합니다. CMake 4.0의 "Compatibility with CMake < 3.5 has been removed", FindBoost 제거, Conan 2 연동, undefined reference, 공유 라이브러리 로딩 실패까지 실제 에러 메시지 기준으로 다룹니다.
-
C++ use-after-free: 해제 후 사용이 생기는 패턴과 ASan·gdb로 추적하기
delete 후 포인터 사용, 지역 변수를 가리키는 참조 반환, 벡터 재할당으로 무효화된 반복자, 람다가 캡처한 소멸된 객체처럼 Use After Free가 생기는 패턴을 예제로 보여줍니다. ASan과 gdb로 추적하는 법과 스마트 포인터로 막는 법도 다룹니다.
-
C++ 힙 손상: 버퍼 오버플로우·이중 delete·use-after-free 원인과 ASan·Valgrind 탐지
C++ 힙 손상이 버퍼 오버플로우, 이중 delete, delete/delete[] 혼용, use-after-free로 발생하는 원리를 힙 메타데이터 구조로 설명합니다. AddressSanitizer·Valgrind 탐지법과 스마트 포인터·RAII 방지책까지 다룹니다.