강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của rootgamer
rootgamer

câu hỏi đã được viết

Tam giác đang hoạt động! CMake cho người mới bắt đầu

Biến CMake

수업 진행 중에 궁금한 부분이 생겼습니다.

Đã giải quyết

Viết

·

172

0

수업진행중 cmake에 관해 궁금한 부분이 생겼는데요. CMakeLists.txt에서 Debug인지 Release인지 작성해준 것이 없는 것 같은데 어떻게 Build/Debug 밑에 실행파일이 생성되게 되나요? 그리고 32bit 프로그램인지 64bit 프로그램인지 작성하는 부분도 없는데 어떤 기준으로 만들어지게 되는건가요? vscode cmake 익스텐션을 사용하고 있는데 익스텐션에서 설정이 되어있는걸까요?

c++cmakevcpkg

Câu trả lời 2

0

triangle님의 프로필 이미지
triangle
Người chia sẻ kiến thức

CMake에는 Debug인지 Release인지 32bit인지 64bit인지 기본 값이 설정되어 있습니다.

CMake에서 빌드를 할 때, --config로 Debug 또는 Release를 결정할 수 있습니다.

예시: cmake --build . --config Release

아키텍쳐는 컴파일러마다 설정하는 방법이 다릅니다.

MSVC

64비트: -A x64

32비트: -A Win32

Clang

64비트: -DCMAKE_C_FLAGS=-m64

32비트: -DCMAKE_C_FLAGS=-m32

감사합니다.

0

안녕하세요, 인프런 AI 인턴입니다. 가나파이님!

CMake를 이용한 빌드 관련하여 몇 가지 궁금한 부분이 있으신 것 같습니다. CMake에서는 다양한 빌드 설정을 할 수 있으며, 이에 관련된 사항들을 간단히 설명드리겠습니다.

  1. Debug/Release 구분:
    CMake에서 Debug 혹은 Release 모드로 빌드하는 것은 CMakeLists.txt 파일에서 직접적으로 설정하지 않고, CMake를 호출할 때 옵션을 주어 결정합니다. 예를 들어, CMake 명령을 실행할 때 -DCMAKE_BUILD_TYPE=Debug 또는 -DCMAKE_BUILD_TYPE=Release 를 지정하여 설정할 수 있습니다. 이러한 옵션을 통해 CMake는 최적화 수준 등 관련 설정을 적용하게 됩니다.

  2. 32bit/64bit 구분:
    기본적으로 CMake는 시스템의 기본 아키텍처를 따라가게 됩니다. 64비트 시스템에서 64비트 빌드를, 32비트 시스템에서 32비트 빌드를 생성합니다. 다만, 명시적으로 32비트 혹은 64비트로 빌드를 원한다면, 특정 CMake 설정이나 toolchain 파일을 통해서 설정할 수 있습니다.

  3. VSCode CMake 익스텐션:
    VSCode의 CMake 익스텐션은 이러한 설정들을 쉽게 관리할 수 있도록 도와줍니다. 설정 파일이나 환경 변수를 통해 기본 빌드 설정을 관리할 수 있으며, 원하는 빌드 설정을 프로파일로 저장하고 필요에 따라 쉽게 전환할 수 있습니다.

아래의 링크들은 해당 주제를 자세히 다룬 기존 질답을 포함하고 있으니 참고하시면 더 많은 도움이 될 것입니다:
- CMake Debug/Release 설정 관련 질문
- CMake 빌드 아키텍처 설정 관련

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

Hình ảnh hồ sơ của rootgamer
rootgamer

câu hỏi đã được viết

Đặt câu hỏi