본문으로 건너뛰기
cccskills
무료GitHub에 공개한국어 소개

Bazel usage

Carbon 프로젝트에서 Bazelisk로 빌드, 테스트, 실행하는 기본 절차를 안내합니다. 대상을 지정한 검증, ASan 활성화, 시스템 의존성 변경 후 캐시 재생성도 다룹니다.

원문원문 설명 보기

Instructions that **MUST** be followed when using Bazel or Bazelisk to build, test, and debug in the Carbon repository.

carbon-language/carbon-lang스타 33,929(GitHub 33,929 + cccskills 0)

실행 점수 미검증

설치 방법 보기

이럴 때 유용합니다

  • Carbon 코드 빌드
  • 변경 사항과 관련된 테스트 실행
  • Bazel로 빌드한 프로그램 실행
  • ASan을 켜고 검증

한국어 소개

할 수 있는 일

이 스킬은 Carbon 프로젝트에서 Bazel을 사용해 빌드, 테스트, 실행하는 방법을 안내합니다. 프로젝트는 버전을 일관되게 맞추기 위해 bazelisk를 사용하므로 bazel을 직접 호출하지 않고 bazelisk 명령을 사용해야 합니다. 전체 프로젝트나 툴체인, 예제처럼 범위를 정해 빌드와 테스트를 수행하는 명령을 제공합니다. bazelisk run으로 빌드된 프로그램을 실행하는 방법, 테스트에 주소 검사기(ASan)를 켜는 방법, 시스템 의존성을 바꾼 뒤 캐시를 다시 만드는 방법도 설명합니다.

이럴 때 유용합니다

Carbon 코드를 변경한 뒤 빌드나 테스트로 확인하려는 경우에 유용합니다. 어떤 명령을 써야 할지 모르거나 시스템 의존성을 변경한 뒤 다시 빌드해야 할 때도 참고할 수 있습니다.

사용 예시

  • “이 툴체인 변경과 관련된 테스트를 실행해 주세요.”
  • “Bazel을 통해 Carbon 드라이버를 실행해 주세요.”
  • “ASan을 켜고 테스트하는 명령을 알려 주세요.”

주의 사항

Carbon 프로젝트에서는 bazelisk를 사용해야 합니다. 설치되어 있지 않으면 ./scripts/run_bazelisk.py를 사용할 수 있습니다. Jujutsu를 위한 별도 절차는 자료에 없습니다.

이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.

문서 점검

AI가 SKILL.md의 내용에서 주의가 필요한 작업과 도입 전제를 확인했습니다. 점수는 실제로 실행한 결과(실행 검증)만으로 매깁니다.

안전성전송·삭제·명령 실행 등을 명시하고 있는가
A양호빌드와 테스트 명령의 범위를 설명하며 파괴적 작업은 지시하지 않습니다.
도입의 용이성필요한 도구나 API 키가 적고 적혀 있는가
B일부 부족Bazelisk가 필요하며, 없을 때 사용할 대체 스크립트만 안내합니다.

점수에는 넣지 않았습니다. 2026년 10월 26일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.

평가가 다르다고 생각되면 재검토를 요청하기

어느 항목이 왜 다르다고 생각하는지 적어 주세요. 로그인은 필요 없습니다. SKILL.md와 대조해 평가를 다시 만들고 이곳에 반영합니다.

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

포함된 파일(1)

  • SKILL.md2.8 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Bazel usage

<!-- Part of the Carbon Language project, under the Apache License v2.0 with LLVM Exceptions. See /LICENSE for license information. SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception -->

This skill documents how best to use Bazel when building, testing, or manipulating the Carbon repository's Bazel in any way.

Bazel wrappers

Carbon uses Bazel for its build system. To ensure consistent versions, the project uses Bazelisk.

[!IMPORTANT] Always use bazelisk whenever you want to run Bazel. Never run bazel directly in the Carbon project. Anything you want to do with bazel can be done with the bazelisk command instead.

  • Bazelisk: Try to use bazelisk in your existing $PATH if available.
    • run_bazelisk.py: If bazelisk isn't available, use ./scripts/run_bazelisk.py to run bazelisk without it being installed.

Essential commands

Building

  • Build all: bazelisk build //...
  • Build toolchain: bazelisk build //toolchain/...
  • Build specific target: bazelisk build //toolchain:carbon

Testing

  • Test all: bazelisk test //...:all
  • Test toolchain: bazelisk test //toolchain/...
  • Test examples: bazelisk test //examples/...

[!TIP] Running all of the tests can be slow, so try to narrowly test the immediately relevant parts of the project first, and only expand coverage as necessary to be confident in the changes.

[!TIP] For specialized instructions on testing and developing the Carbon toolchain, consult these skills:

Running binaries built by Bazel

[!IMPORTANT] Always manually run binaries built by Bazel using the bazelisk run command. Never run the binary directly from bazel-bin/.

You can run the Carbon driver or command line directly via Bazel:

  • bazelisk run //toolchain -- compile --phase=parse toolchain/parse/testdata/basics/empty.carbon

Advanced configurations

AddressSanitizer (ASan)

To enable ASan for local testing:

  • Pass --config=asan: bazelisk test --config=asan //...

Common pitfalls and troubleshooting

bazel clean

Changes to packages installed on your system (like changing LLVM versions or installing libc++) may not be noticed by Bazel.

  • Run bazelisk clean to force cached state to be rebuilt when environment changes occur.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Accessing GitHub issues

무료요약 있음

명령줄의 `gh`로 GitHub 이슈 본문과 댓글을 읽기 전용으로 확인하는 방법을 안내합니다. 번호나 URL로 이슈를 찾고 다른 저장소를 지정하는 방법, 댓글이 많은 경우 JSON과 `jq`로 내용을 추출하는 방법을 다룹니다.

  • 이슈 본문과 댓글 읽기
  • URL로 이슈 내용 확인
  • 다른 저장소의 이슈 조회
carbon-language/carbon-lang3.4만2026년 10월 26일 업데이트

Agent tools

무료요약 있음

Carbon 저장소에서 일하는 AI 도우미가 전용 환경 도구로 파일을 읽고 검색하고 편집하는 규칙을 안내합니다. 임시 파일을 둘 위치와 삭제 시점, 사용자 지정 프로그램을 허용하는 경우도 설명합니다.

  • 정해진 도구로 Carbon 파일 검색
  • 파일 변경에 맞는 전용 도구 선택
  • 임시 파일 위치와 삭제 규칙 확인
carbon-language/carbon-lang3.4만2026년 10월 26일 업데이트

Builtin functions

무료요약 있음

Carbon 컴파일러에 내장 함수를 추가하는 절차를 안내합니다. 함수 등록과 시그니처 검증부터 상수 평가, 런타임 호출의 LLVM IR 생성, Prelude 연결, 최소 Prelude를 이용한 개별 테스트까지 다룹니다.

  • 내장 함수 등록
  • 상수 평가 구현
  • LLVM IR 생성 추가
carbon-language/carbon-lang3.4만2026년 10월 26일 업데이트

Code style

무료요약 있음

Carbon 툴체인의 Bazel, C++, Carbon, Markdown, Python 파일 서식 기준을 안내합니다. 주석, 문서, 이름, 설계 원칙과 변경 내용을 설명하는 커밋 메시지 작성법도 다룹니다.

  • Carbon 코드와 관련 파일 서식 정리
  • 주석과 문서 검토
  • 이름이 실제 의미에 맞는지 확인
carbon-language/carbon-lang3.4만2026년 10월 26일 업데이트

Diagnostics

무료요약 있음

Carbon 도구 체인에서 오류와 경고 진단을 추가하거나 수정하는 방법을 안내합니다. 진단 종류 등록, 형식이 지정된 인수로 메시지 구성, 소스 위치에 라벨과 문맥 연결, 문구 규칙 및 테스트 범위 확인을 다룹니다.

  • 진단 메시지 추가
  • 소스 위치에 라벨 지정
  • 진단 문구 통일
carbon-language/carbon-lang3.4만2026년 10월 26일 업데이트

GitHub CLI usage

무료요약 있음

`gh`로 GitHub 이슈, 풀 리퀘스트, 저장소와 코드를 읽기 전용으로 검색하고 확인하는 방법을 안내합니다. REST·GraphQL API 조회, 페이지별 결과 수집, 출력 필터링과 형식 지정도 다룹니다.

  • 이슈의 내용과 상태 확인
  • 풀 리퀘스트의 변경 사항과 검사 상태 확인
  • GitHub 코드나 저장소 검색
carbon-language/carbon-lang3.4만2026년 10월 26일 업데이트

carbon-language의 스킬 모두 보기

이 스킬의 문제 신고