• SEARCH

    통합검색
  • GAMEZONE
    • 커뮤니티
      • 공지사항
      • 유저게시판
        • 등업게시판
        • 출석체크
        • 정회원 무료자료실
      • 스크린샷
      • 인증자료실
    • 리니지
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 메이플스토리
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 바람의나라
      • 자유게시판
      • 홍보게시판
      • 자료게시판
        • 유틸자료실
        • 소스자료실
        • 클라이언트
        • 팩 자료실
      • 연구게시판
        • 개발내역
        • 질문과답변
        • 기타
      • 강의게시판
        • DR
        • CR
        • 구버전
        • 클라이언트 개조
        • 노하우 게시판
        • 게임공략 & 팁
    • 다크에덴
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 믹스마스터
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 라그나로크
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 기타게임
      • 게임공략 & 팁
      • 홍보게시판
      • 유틸자료실
      • 소스자료실
      • 자유게시판
      • 노하우 게시판
    • 게임강의
    • 비베&포토샵
      • 자유게시판
      • 자료실
        • 일반자료실
        • 포인트 자료실
      • 노하우게시판
      • 포토샵게시판
    • 모바일
      • 게임공략
      • 포인트 자료실
      • 유틸자료실
      • 자유게시판
  • 기타게임 소스자료실
    • 기타게임 소스자료실 기타 ()
    • [Rust 공식문서 한국어 정리] ⑰. The rustc Book

      • 오뉴노노
      • 1시간 전 1

    [Rust 공식문서 한국어 정리] ⑰. Rust 컴파일러 rustc

    원문 제목: The rustc Book
    작성자: The Rust Project

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    📌 1. 서론 — 이 문서가 다루는 내용
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    rustc는 Rust 공식 컴파일러로, Rust 소스 코드를 실행 가능한 바이너리로 변환합니다.
    이 문서에서는 rustc의 낭부 구조, 컴파일 과정, 그리고 고급 사용법을 다룹니다.
    Cargo를 통해 간접적으로 사용하는 것이 일반적이지만, rustc를 직접 다루는 법도 알아야 합니다.
    특히 크로스 컴파일, 커스텀 타겟, 그리고 컴파일러 플래그를 직접 제어할 때 필요합니다.
    컴파일러의 동작 원리를 이해하면 성능 최적화와 디버깅에 큰 도움이 됩니다.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    📌 2. 핵심 개념
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    ① 컴파일 과정 (Compile Pipeline)
    rustc는 소스 코드를 파싱하여 AST를 만들고, MIR로 변환한 뒤 LLVM IR을 생성합니다.
    이 과정에서 타입 검사, borrow 검사, 최적화 등이 순차적으로 수행됩니다.

    ② 타겟 트리플 (Target Triple)
    rustc는 다양한 아키텍처와 OS를 지원합니다.
    x86_64-unknown-linux-gnu, aarch64-apple-darwin 등 타겟 트리플로 지정합니다.

    ③ 컴파일러 플래그
    -C opt-level, -C lto, -C target-cpu 등 다양한 최적화 플래그를 제공합니다.
    링커 옵션, 코드 생성 옵션, 디버깅 옵션 등 세밀한 제어가 가능합니다.

    ④ 크로스 컴파일
    호스트와 다른 타겟으로 바이너리를 생성할 수 있습니다.
    타겟 스펙 JSON 파일을 직접 작성해 커스텀 임베디드 환경도 지원합니다.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    📌 3. 주요 내용 상세
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    rustc는 여러 단계를 거쳐 소스 코드를 기계어로 변환합니다.
    먼저 렉서(lexer)가 소스를 토큰으로 쪼개고, 파서(parser)가 AST를 만듭니다.
    그 후 이름 해결(name resolution)과 타입 검사(type checking)가 이루어집니다.

    borrow checker는 소유권 규칙을 검증하여 메모리 안전성을 보장합니다.
    이 단계에서 수명(lifetime) 분석과 대여 규칙 검사가 수행됩니다.
    MIR(Mid-level IR)로 낮춰진 후에는 추가적인 검사와 최적화가 이루어집니다.

    LLVM IR 생성 단계에서는 Rust 특유의 제어 흐름이 LLVM의 표현으로 변환됩니다.
    LLVM의 강력한 최적화 패스가 적용되어 효율적인 기계어가 생성됩니다.
    링킹 단계에서는 외부 크레이트와 표준 라이브러리가 함께 연결됩니다.

    고급 사용법으로는 -Z 플래그를 통한 불안정한 기능 활성화가 있습니다.
    -Z time-passes로 각 컴파일 단계의 소요 시간을 측정할 수 있습니다.
    -Z unpretty=mir로 MIR을 직접 확인하며 낭부 동작을 분석할 수 있습니다.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    📌 4. 실전 활용 / 예시
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    임베디드 개발에서는 커스텀 타겟 JSON을 작성해 메모리 레이아웃을 직접 제어합니다.
    성능 최적화가 필요할 때 -C opt-level=3 -C lto=fat으로 최대 최적화를 적용하세요.
    컴파일 시간이 느릴 때 -Z time-passes로 병목 지점을 찾아 개선하세요.

    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
    📌 5. 정리
    ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

    rustc는 Rust의 핵심 도구이며, 그 낭부 동작을 이해하면 고급 개발이 가능합니다.
    Cargo가 대부분의 작업을 추상화하지만, 직접 rustc를 다루는 능력은 필수적입니다.
    크로스 컴파일과 커스텀 타겟 지원은 Rust가 다양한 플랫폼에서 활용되는 이유입니다.

    📎 출처 링크
    https://doc.rust-lang.org/rustc/

    #Rust #Rustlang #rustc #컴파일러 #공식문서

    이 게시물을..
    N
    0
    0
    • [Rust 공식문서 한국어 정리] ⑳. Rust와 웹어셈블리 — Wasm 개발 가이드오뉴노노
    • 6
      오뉴노노

    오뉴노노 님의 최근 글

    [Rust 공식문서 한국어 정리] 68. Rust 속성 매크로(Attribute Macros) 가이드 2026 06.08 [Rust 공식문서 한국어 정리] 67. Rust 파생 매크로(Derive Macros) 가이드 2026 06.08 [Rust 공식문서 한국어 정리] 66. Rust 클로저 타입 가이드 2026 06.08 [Rust 공식문서 한국어 정리] 65. Rust 트레이트 해석(Trait Resolution) 가이드 2026 06.08 [Rust 공식문서 한국어 정리] 64. Rust 타입 추론 가이드 2026 06.08

    오뉴노노 님의 최근 댓글

    ㅋㅋㅋㅋㅋ 2019 01.14 잘 읽었습니다 2018 12.30 포인트가 없어서 아직 시작을 못하고있는데요! 글은 잘 읽었습니다! 포인트 쌓고 도전할거에요 2018 12.30
    글쓴이의 서명작성글 감추기 
    댓글 쓰기 에디터 사용하기 닫기
    • view_headline 목록
    • 14px
    • [Rust 공식문서 한국어 정리] ⑳. Rust와 웹어셈블리 — Wasm 개발 가이드
    • 목록
      view_headline
    × CLOSE
    전체 던파 5 뮤 18 천상비 프로젝트신루 5 아이온 18 어둠의전설 28 리니지2 7 크로노스 5 칼온라인 3 기타 360
    기본 (452) 제목 날짜 수정 조회 댓글 추천 비추
    분류 정렬 검색
    • 포인트 획득 공지
      5
      2026.04.24 - 19:48 4848 5
    • 링크 업로드 관련 공지
      8
      2026.03.25 - 21:56 4660 8
    • 인증메일 공지
      3
      2026.03.15 - 16:42 4559 3
    • 파일링크 및 인증메일 발송 관련 문의 안내
      9
      2026.03.14 - 22:03 5161 9
    • 포인트 게시판 안내
      2026.02.28 - 19:14 5940
    • 게임존 사이트 변경 사항 안내
      9
      2026.02.26 - 01:07 7799 9
    • 소스자료는 직접 올려주세요
      2017.06.06 - 16:16 852
    452
    기타
    [Rust 공식문서 한국어 정리] 68. Rust 속성 매크로(Attribute Macros) 가이드
    N
    오뉴노노 1분 전
    451
    기타
    [Rust 공식문서 한국어 정리] 67. Rust 파생 매크로(Derive Macros) 가이드
    N
    오뉴노노 1분 전
    450
    기타
    [Rust 공식문서 한국어 정리] 66. Rust 클로저 타입 가이드
    N
    오뉴노노 1분 전
    449
    기타
    [Rust 공식문서 한국어 정리] 65. Rust 트레이트 해석(Trait Resolution) 가이드
    N
    오뉴노노 1분 전
    448
    기타
    [Rust 공식문서 한국어 정리] 64. Rust 타입 추론 가이드
    N
    오뉴노노 1분 전
    447
    기타
    [Rust 공식문서 한국어 정리] 63. Rust 인라인 어셈블리 가이드
    N
    오뉴노노 2분 전
    446
    기타
    [Rust 공식문서 한국어 정리] 62. Rust SIMD 가이드
    N
    오뉴노노 2분 전
    445
    기타
    [Rust 공식문서 한국어 정리] 61. Rust no_std 가이드
    N
    오뉴노노 2분 전
    444
    기타
    [Rust 공식문서 한국어 정리] 60. Rust 임베디드 HAL 가이드
    N
    오뉴노노 3분 전
    443
    기타
    [Rust 공식문서 한국어 정리] 59. Rust wasm-pack 가이드
    N
    오뉴노노 3분 전
    442
    기타
    [Rust 공식문서 한국어 정리] 58. Rust FFI 모범 사례 가이드
    N
    오뉴노노 3분 전
    441
    기타
    [Rust 공식문서 한국어 정리] 57. Rust 에디션 마이그레이션 가이드
    N
    오뉴노노 4분 전
    440
    기타
    [Rust 공식문서 한국어 정리] 56. Rust MSRV 가이드
    N
    오뉴노노 4분 전
    439
    기타
    [Rust 공식문서 한국어 정리] 55. Rust 의존성 관리 가이드
    N
    오뉴노노 4분 전
    438
    기타
    [Rust 공식문서 한국어 정리] 54. Rust 린팅(Linting) 가이드 — Clippy
    N
    오뉴노노 5분 전
    437
    기타
    [Rust 공식문서 한국어 정리] 53. Rust 코드 커버리지 가이드
    N
    오뉴노노 5분 전
    436
    기타
    [Rust 공식문서 한국어 정리] 52. Rust 퍼징(Fuzzing) 가이드
    N
    오뉴노노 6분 전
    435
    기타
    [Rust 공식문서 한국어 정리] 51. Rust 속성 기반 테스트(Property Testing) 가이드
    N
    오뉴노노 6분 전
    434
    기타
    [Rust 공식문서 한국어 정리] ㊿. Rust 테스트 전략 가이드
    N
    오뉴노노 6분 전
    433
    기타
    [Rust 공식문서 한국어 정리] ㊾. Rust 웹 프레임워크 가이드
    N
    오뉴노노 7분 전
    432
    기타
    [Rust 공식문서 한국어 정리] ㊽. Rust HTTP 가이드
    N
    오뉴노노 7분 전
    431
    기타
    [Rust 공식문서 한국어 정리] ㊼. Rust CLI 파싱 가이드 — Clap
    N
    오뉴노노 7분 전
    430
    기타
    [Rust 공식문서 한국어 정리] ㊻. Rust 직렬화(Serialization) 가이드 — Serde
    N
    오뉴노노 8분 전
    429
    기타
    [Rust 공식문서 한국어 정리] ㊺. Rust 로깅(Logging) 가이드
    N
    오뉴노노 8분 전
    428
    기타
    [Rust 공식문서 한국어 정리] ㊹. Rust 벤치마킹 가이드
    N
    오뉴노노 8분 전
    427
    기타
    [Rust 공식문서 한국어 정리] ㊸. Rust 디버깅 가이드
    N
    오뉴노노 10분 전
    426
    기타
    [Rust 공식문서 한국어 정리] ㊷. Rust 링킹(Linking) 가이드
    N
    오뉴노노 12분 전
    425
    기타
    [Rust 공식문서 한국어 정리] ㊶. Rust 크로스 컴파일 가이드
    N
    오뉴노노 14분 전
    424
    기타
    [Rust 공식문서 한국어 정리] ㊵. Rust 원자성과 락(Atomics and Locks) 가이드
    N
    오뉴노노 15분 전
    423
    기타
    [Rust 공식문서 한국어 정리] ㊴. Rust 채널(Channels) 가이드
    N
    오뉴노노 17분 전
    422
    기타
    [Rust 공식문서 한국어 정리] ㊳. Rust 스트림(Streams) 가이드
    N
    오뉴노노 19분 전
    421
    기타
    [Rust 공식문서 한국어 정리] ㊲. Rust Pin과 Unpin 가이드
    N
    오뉴노노 23분 전
    420
    기타
    [Rust 공식문서 한국어 정리] ㊱. Rust 상수 제네릭(Const Generics) 가이드
    N
    오뉴노노 26분 전
    419
    기타
    [Rust 공식문서 한국어 정리] ㉟. Rust 연관 타입(Associated Types) 가이드
    N
    오뉴노노 27분 전
    418
    기타
    [Rust 공식문서 한국어 정리] ㉞. Rust 트레이트 객체(Trait Objects) 가이드
    N
    오뉴노노 29분 전
    417
    기타
    [Rust 공식문서 한국어 정리] ㉝. Rust 수명 생략(Lifetime Elision) 규칙
    N
    오뉴노노 30분 전
    416
    기타
    [Rust 공식문서 한국어 정리] ㉜. Rust 프로시저 매크로(Procedural Macros) 가이드
    N
    오뉴노노 31분 전
    415
    기타
    [Rust 공식문서 한국어 정리] ㉛. Rust 기능 플래그(Feature Flags) 가이드
    N
    오뉴노노 33분 전
    414
    기타
    [Rust 공식문서 한국어 정리] ㉚. Rust 워크스페이스 가이드
    N
    오뉴노노 34분 전
    413
    기타
    [Rust 공식문서 한국어 정리] ㉙. Rust 크레이트 배포 가이드
    N
    오뉴노노 35분 전
    412
    기타
    [Rust 공식문서 한국어 정리] ㉘. Rust SemVer 가이드
    N
    오뉴노노 36분 전
    411
    기타
    [Rust 공식문서 한국어 정리] ㉗. Rust 릴리스 프로세스
    N
    오뉴노노 38분 전
    410
    기타
    [Rust 공식문서 한국어 정리] ㉖. Rust CI/CD 가이드
    N
    오뉴노노 40분 전
    409
    기타
    [Rust 공식문서 한국어 정리] ㉕. Rust 테스트 가이드
    N
    오뉴노노 41분 전
    408
    기타
    [Rust 공식문서 한국어 정리] ㉔. Rust 에러 처리 완벽 가이드
    N
    오뉴노노 43분 전 1
    407
    기타
    [Rust 공식문서 한국어 정리] ㉓. Rust 안전하지 않은 코드 가이드라인
    N
    오뉴노노 44분 전
    406
    기타
    [Rust 공식문서 한국어 정리] ㉒. Rust 외부 함수 인터페이스(FFI) 가이드
    N
    오뉴노노 46분 전
    405
    기타
    [Rust 공식문서 한국어 정리] ㉑. 임베디드 Rust — 하드웨어 프로그래밍 입문
    N
    오뉴노노 47분 전
    404
    기타
    [Rust 공식문서 한국어 정리] ⑳. Rust와 웹어셈블리 — Wasm 개발 가이드
    N
    오뉴노노 48분 전
    403
    기타
    [Rust 공식문서 한국어 정리] ⑲. Rust와 C++의 안전한 상호운용 — CXX
    N
    오뉴노노 50분 전
    • 1 2 3 4 5 6 7 8 9 .. 10
    • / 10 GO
  • GAMEZONE
 GAMEZONE all rights reserved.
by OrangeDay