Crow C++ 설치 가이드 (Windows)
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
- C++ 웹 서버 개발자
- Windows 환경에서 C++ 프레임워크 사용 경험자
- 중급 난이도 (명령줄 도구 및 빌드 도구 사용 요구)
핵심 요약
- 필수 도구 설치: Git, Python 3.11, GCC, CMake 3.26.0.0 (Windows용 MinGW/UCRT)
- CMake 버전 충돌 해결:
MinGW
폴더의cmake.exe
를DISABLED-cmake.exe
로 이름 변경 - 프로젝트 구조:
asio
라이브러리 포함 및C:\Includes\crow
폴더에 컴파일 결과 저장 - 빌드 명령:
cmake -G "Unix Makefiles" -Bbuild ...
사용하여 Crow 컴파일 및 설치 - 테스트 코드:
crow::SimpleApp
사용,g++ main.cpp -I...
로 컴파일 후app.exe
실행
섹션별 세부 요약
1. 필수 도구 설치
- Git, Python 3.11, GCC, CMake 설치:
winget install
명령어 사용- MinGW 설치 시
cmake.exe
경로 충돌 가능성 주의 - CMake 버전 관리:
C:\mingw64\bin\cmake.exe
를DISABLED-cmake.exe
로 리네임Get-Command cmake
실행 시C:\Program Files\CMake\bin\cmake.exe
경로 확인
2. 프로젝트 구조 설정
- 폴더 생성:
C:\Includes\crow
폴더 생성 (라이브러리 저장)MyProjectCrow
폴더 내asio
라이브러리 다운로드 및 복사- Crow 레포지토리 클론:
git clone
명령어로 Crow 소스 코드 복사asio
폴더를Crow
폴더 내부로 이동
3. 컴파일 및 설치
- CMake 구성:
cmake -G "Unix Makefiles" -Bbuild ...
명령어 사용-DASIO_INCLUDE_DIR="./asio"
및-DCMAKE_CXX_FLAGS="-I./asio"
옵션 포함- 빌드 및 설치:
cmake --build build
및cmake --install build
명령어 실행- 설치 경로:
C:\Includes\crow\include
및C:\Includes\crow\lib
4. 테스트 및 실행
- 테스트 코드 작성:
```cpp
int main() {
crow::SimpleApp app;
CROW_ROUTE(app, "/")({ return "Hello world"; });
app.port(18080).multithreaded().run();
}
```
- 컴파일 및 실행:
- 명령어:
g++ main.cpp -I"C:/Includes/asio/include" -I"C:/Includes/crow/include" -lws2_32 -lmswsock -o app.exe
- 실행 결과:
http://localhost:18080
에 접속 시 "Hello world" 표시
결론
- CMake 버전 충돌 방지를 위해
MinGW
의cmake.exe
를 리네임하는 것이 필수적 C:\Includes\
폴더를 사용하여 라이브러리 관리 (Unix 스타일 경로 활용)- 테스트 시 주의:
0.0.0.0:18080
은 플레이스홀더로localhost:18080
으로 접근해야 함 - 성능 최적화: 멀티스레드 모드(
.multithreaded()
) 활성화 권장