도구 모음

문제 신고 소스 보기

사용 중인 C++ 컴파일러에 관한 정보입니다.

구성원

all_files

depset CcToolchainInfo.all_files

모든 도구 모음 파일을 반환합니다 (이 도구 모음을 입력으로 사용하여 작업에 전달될 수 있도록).

ar_executable

string CcToolchainInfo.ar_executable

ar 바이너리의 경로입니다.

built_in_include_directories

list CcToolchainInfo.built_in_include_directories

컴파일러의 내장 디렉터리 목록을 반환합니다.

compiler

string CcToolchainInfo.compiler

C++ 컴파일러입니다. None를 반환할 수 있습니다.

compiler_executable

string CcToolchainInfo.compiler_executable

컴파일러 바이너리의 경로입니다.

cpu

string CcToolchainInfo.cpu

C++ 도구 모음의 대상 CPU입니다. None를 반환할 수 있습니다.

dynamic_runtime_lib

depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)

`dynamic_runtime_lib` 속성에서 파일을 반환하여 이 도구 모음을 입력으로 사용하는 작업에 전달할 수 있습니다. 호출자는 feature_configuration이 `static_link_cpp_runtimes` 기능을 사용 설정하는지 확인하고 (그렇지 않으면 `static_runtime_lib` 및 `dynamic_runtime_lib` 모두 사용할 필요가 없음) 정적 연결 모드가 활성 상태이면 `static_runtime_lib` 를 사용할 수 있습니다.

매개변수

매개변수 설명
feature_configuration 필수
쿼리할 기능 구성입니다.

gcov_executable

string CcToolchainInfo.gcov_executable

gcov 바이너리의 경로입니다.

ld_executable

string CcToolchainInfo.ld_executable

ld 바이너리의 경로입니다.

libc님

string CcToolchainInfo.libc

libc 버전 문자열입니다. None를 반환할 수 있습니다.

needs_pic_for_dynamic_libraries

bool CcToolchainInfo.needs_pic_for_dynamic_libraries(feature_configuration)

이 규칙의 컴파일에 -fPIC가 적용되어야 하면 true를 반환하고 그렇지 않으면 false를 반환합니다. C++ 도구 모음과 `--force_pic` Bazel 옵션의 존재에 따라 이 규칙의 C++ 컴파일에 -fPIC를 적용해야 하는지 결정합니다.

매개변수

매개변수 설명
feature_configuration 필수
쿼리할 기능 구성입니다.

nm_executable

string CcToolchainInfo.nm_executable

nm 바이너리의 경로입니다.

objcopy_executable

string CcToolchainInfo.objcopy_executable

objcopy 바이너리의 경로입니다.

objdump_executable

string CcToolchainInfo.objdump_executable

objdump 바이너리의 경로입니다.

preprocessor_executable

string CcToolchainInfo.preprocessor_executable

전처리기 바이너리의 경로입니다.

static_runtime_lib

depset CcToolchainInfo.static_runtime_lib(feature_configuration)

`static_runtime_lib` 속성에서 파일을 반환합니다 (이 도구 모음을 입력으로 사용하는 작업에 전달할 수 있도록). 호출자는 feature_configuration이 `static_link_cpp_runtimes` 기능을 사용 설정하는지 확인하고 (그렇지 않은 경우 `static_runtime_lib` 및 `dynamic_runtime_lib` 를 모두 사용해야 함) 동적 연결 모드가 활성 상태이면 `dynamic_runtime_lib` 를 사용해야 합니다.

매개변수

매개변수 설명
feature_configuration 필수
쿼리할 기능 구성입니다.

strip_executable

string CcToolchainInfo.strip_executable

스트립 바이너리의 경로입니다.

sysroot

string CcToolchainInfo.sysroot

사용할 sysroot를 반환합니다. 도구 모음 컴파일러가 다른 sysroot를 지원하지 않거나 sysroot가 기본 sysroot와 동일한 경우 이 메서드는 None를 반환합니다. None를 반환할 수 있습니다.

target_gnu_system_name

string CcToolchainInfo.target_gnu_system_name

GNU 시스템 이름입니다. None를 반환할 수 있습니다.

to_json

string CcToolchainInfo.to_json()

지원 중단됨. 이 API는 지원 중단되었으며 곧 삭제됩니다. 의존하지 마세요. ---incompatible_struct_has_no_methods를 통해 사용 중지됩니다. 이 플래그를 사용하여 코드가 임박한 삭제와 호환되는지 확인합니다.
구조체 매개변수에서 JSON 문자열을 만듭니다. 이 메서드는 모든 구조체 요소가 문자열, 정수, 불리언, 기타 구조체, 이러한 유형의 목록 또는 문자열 키와 이러한 유형의 값이 포함된 사전인 경우에만 작동합니다. 문자열의 따옴표와 줄바꿈은 이스케이프 처리됩니다. 예:
struct(key=123).to_json()
# {"key":123}

struct(key=True).to_json()
# {"key":true}

struct(key=[1, 2, 3]).to_json()
# {"key":[1,2,3]}

struct(key='text').to_json()
# {"key":"text"}

struct(key=struct(inner_key='text')).to_json()
# {"key":{"inner_key":"text"}}

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
# {"key":[{"inner_key":1},{"inner_key":2}]}

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
# {"key":{"inner_key":{"inner_inner_key":"text"}}}

지원 중단됨: 대신 구조체 이외의 값에 대해 작동하고 구조체 필드 네임스페이스를 오염하지 않는 json.encode(x) 또는 json.encode_indent(x)를 사용합니다.

to_proto

string CcToolchainInfo.to_proto()

지원 중단됨. 이 API는 지원 중단되었으며 곧 삭제됩니다. 의존하지 마세요. ---incompatible_struct_has_no_methods를 통해 사용 중지됩니다. 이 플래그를 사용하여 코드가 임박한 삭제와 호환되는지 확인합니다.
구조체 매개변수에서 텍스트 메시지를 만듭니다. 이 메서드는 모든 구조체 요소가 (재귀적으로) 문자열, 정수, 불리언, 기타 구조체 또는 사전 또는 이러한 유형의 목록인 경우에만 작동합니다. 문자열의 따옴표와 줄바꿈은 이스케이프 처리됩니다. 구조체 키는 정렬된 순서로 반복됩니다. 예:
struct(key=123).to_proto()
# key: 123

struct(key=True).to_proto()
# key: true

struct(key=[1, 2, 3]).to_proto()
# key: 1
# key: 2
# key: 3

struct(key='text').to_proto()
# key: "text"

struct(key=struct(inner_key='text')).to_proto()
# key {
#   inner_key: "text"
# }

struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
# key {
#   inner_key: 1
# }
# key {
#   inner_key: 2
# }

struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
# key {
#    inner_key {
#     inner_inner_key: "text"
#   }
# }

struct(foo={4: 3, 2: 1}).to_proto()
# foo: {
#   key: 4
#   value: 3
# }
# foo: {
#   key: 2
#   value: 1
# }

지원 중단됨: proto.encode_text(x)를 대신 사용하세요.