Build Systems

    [CMake] CMake 소개 및 필요성: Modern CMake 3.23+

    💡 본 문서는 'CMake 소개 및 필요성'에 대해 정리해놓은 글입니다. C/C++ 프로젝트의 빌드를 용이하게 해주는 CMake에 대한 간략한 소개 및 관련 자료들을 정리하였으니 참고하시기 바랍니다. 1. CMake 란? Make의 빌드관리시스템을 만들기 위한 오픈소스 프로젝트(Make 이외의 .ninja와 같은 빌드 파일도 만들 수 있음). 스스로 기존의 Make의 과정을 수행하지는 않고 지정한 운영 체제에 맞는 Make 파일의 생성 및 관리만을 수행하기 때문에 Meta Make라고도 불리우는 빌드 자동화 시스템. 한번 작성해 두면 유닉스 계열은 물론, 마이크로소프트 window 계열의 프로그래밍 도구도 지원. 2. 왜 CMake를 사용하는 걸까? You want to avoid hard-coding ..

    [C++] C++ 빌드 시스템(툴)에는 뭐가 있을까?

    본 문서는 C++을 위한 빌드시스템을 비교한 문서로 다음의 feature를 기준으로 비교 작성한다. 1. C++11 support 2. Cross platform (Linux as main target, but able to build on at least Windows as well) 3. Decent unit testing support 4. Support for multiple modules for separating code out 5. Support for code generation (Using asn1c or protobuf - not 100% sure yet) 6. Easy to maintain 참고 An overview of build systems (mostly for C++ proje..