도구 모음

문제 신고 소스 보기 Nightly · 8.0 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

사용 중인 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 required
쿼리할 기능 구성입니다.

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 required
쿼리할 기능 구성입니다.

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 required
쿼리할 기능 구성입니다.

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)를 사용하세요.