cplusplus

(★ 158)

A compiler front end for the C++ language

  • .clang-format
  • .dockerignore
  • .gitignore
  • CHANGELOG.md
  • clangd.in
  • clangd_emscripten.in
  • CMakeLists.txt
  • CMakePresets.json
  • Config.cmake.in
  • Dockerfile.emsdk
  • Dockerfile.wasi
  • LICENSE
  • package-lock.json
  • package.json
  • pyproject.toml
  • README.md
  • uv.lock

# 설치 가이드

1. 코드 내려받기
git clone https://github.com/robertoraggi/cplusplus

깃허브에서 프로젝트 코드 전체를 내 컴퓨터로 내려받습니다.

cd cplusplus

방금 내려받은 프로젝트 폴더 안으로 이동합니다.

2. Docker

쉬움 추천
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Docker Desktop 컨테이너를 빌드하고 실행하려면 필요합니다. 설치 후 실행해서 백그라운드에 켜두세요.
docker build -f Dockerfile.emsdk -t cplusplus .

Dockerfile을 기반으로 실행 가능한 이미지를 빌드합니다.

docker run -p 8080:80 cplusplus

빌드된 이미지를 실제 컨테이너로 실행합니다.

터미널에 docker compose ps 를 입력해 컨테이너들이 Up 상태인지 확인하세요. README에 포트 번호가 적혀있다면 브라우저에서 http://localhost:포트번호 로 접속해보세요.

3. CMake

보통
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • CMake 빌드 설정을 생성하는 도구입니다.
  • C/C++ 컴파일러 Windows는 Visual Studio(Community 무료), macOS는 Xcode Command Line Tools, Linux는 gcc/g++ 패키지가 필요합니다.
cmake --preset default-mlir

이 명령어를 터미널에 그대로 입력해 실행하세요.

cmake --build build

이 명령어를 터미널에 그대로 입력해 실행하세요.

build 폴더 안에 실행 파일이 생성됐는지 확인하고, 직접 실행해보세요 (예: ./build/앱이름).

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

4. Node.js

쉬움
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Node.js npm 명령어를 쓰려면 Node.js가 설치되어 있어야 합니다. LTS(장기지원) 버전을 추천합니다.
npm ci

이 명령어를 터미널에 그대로 입력해 실행하세요.

npm run build:cxx-frontend

배포용으로 코드를 최적화해서 빌드 파일을 생성합니다.

npm run build:wasi

배포용으로 코드를 최적화해서 빌드 파일을 생성합니다.

npm install cxx-frontend

package.json에 명시된 라이브러리들을 내려받아 설치합니다.

명령어 실행 후 터미널에 나타나는 주소(보통 http://localhost:3000 형태)를 브라우저에서 열어보세요.

이 레포의 README에 적힌 실제 명령어를 그대로 가져왔습니다.

5. Python

쉬움
사전 준비물
  • Git GitHub에서 프로젝트 코드를 내려받으려면 필요합니다.
  • Python 3 설치 시 'Add Python to PATH' 옵션을 꼭 체크하세요 (Windows).
pip install .

PyPI에 배포된 패키지를 바로 설치합니다. 소스 클론이 필요 없습니다.

python <실행할 파일명>.py # README에서 정확한 실행 파일명을 확인하세요

파이썬 스크립트(또는 모듈)를 실행합니다.

에러 메시지 없이 실행되고 터미널에 안내 문구가 출력되면 정상입니다.
// repository documentation