CcToolchainInfo

Reportar um problema Ver código-fonte Nightly · 8.0 . 7.4 . 7.3 · 7.2 · 7.1 · 7.0 · 6.5

Informações sobre o compilador C++ usado.

Membros

all_files

depset CcToolchainInfo.all_files

Retorna todos os arquivos da cadeia de ferramentas para que eles possam ser transmitidos a ações que usam essa cadeia como entradas.

ar_executable

string CcToolchainInfo.ar_executable

O caminho para o binário ar.

built_in_include_directories

list CcToolchainInfo.built_in_include_directories

Retorna a lista de diretórios integrados do compilador.

compilador

string CcToolchainInfo.compiler

Compilador C++. Pode retornar None.

compiler_executable

string CcToolchainInfo.compiler_executable

O caminho para o binário do compilador.

cpu

string CcToolchainInfo.cpu

CPU de destino do conjunto de ferramentas C++. Pode retornar None.

dynamic_runtime_lib

depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)

Retorna os arquivos do atributo "dynamic_runtime_lib" para que eles possam ser transmitidos para ações que usam essa cadeia de ferramentas como entradas. O autor da chamada pode verificar se a feature_configuration ativa o recurso "static_link_cpp_runtimes". Se não, nem "static_runtime_lib" nem "dynamic_runtime_lib" precisam ser usados. Use "static_runtime_lib" se o modo de vinculação estática estiver ativo.

Parâmetros

Parâmetro Descrição
feature_configuration required
Configuração do recurso a ser consultada.

gcov_executable

string CcToolchainInfo.gcov_executable

O caminho para o binário gcov.

ld_executable

string CcToolchainInfo.ld_executable

O caminho para o binário ld.

libc

string CcToolchainInfo.libc

String da versão da libc. Pode retornar None.

needs_pic_for_dynamic_libraries

bool CcToolchainInfo.needs_pic_for_dynamic_libraries(feature_configuration)

Retorna verdadeiro se as compilações desta regra precisarem aplicar -fPIC. Caso contrário, retorna falso. Determina se é necessário aplicar -fPIC para as compilações C++ desta regra, dependendo do conjunto de ferramentas C++ e da presença da opção `--force_pic` do Bazel.

Parâmetros

Parâmetro Descrição
feature_configuration required
Configuração do recurso a ser consultada.

nm_executable

string CcToolchainInfo.nm_executable

O caminho para o binário nm.

objcopy_executable

string CcToolchainInfo.objcopy_executable

O caminho para o binário objcopy.

objdump_executable

string CcToolchainInfo.objdump_executable

O caminho para o binário objdump.

preprocessor_executable

string CcToolchainInfo.preprocessor_executable

O caminho para o binário do pré-processador.

static_runtime_lib

depset CcToolchainInfo.static_runtime_lib(feature_configuration)

Retorna os arquivos do atributo "static_runtime_lib" para que eles possam ser transmitidos para ações que usam essa cadeia de ferramentas como entradas. O autor da chamada precisa verificar se a feature_configuration ativa o recurso "static_link_cpp_runtimes". Caso contrário, nem "static_runtime_lib" nem "dynamic_runtime_lib" podem ser usados. Além disso, use "dynamic_runtime_lib" se o modo de vinculação dinâmica estiver ativo.

Parâmetros

Parâmetro Descrição
feature_configuration required
Configuração do recurso a ser consultada.

strip_executable

string CcToolchainInfo.strip_executable

O caminho para o binário de remoção.

sysroot

string CcToolchainInfo.sysroot

Retorna o sysroot a ser usado. Se o compilador de toolchain não oferecer suporte a sysroots diferentes ou se o sysroot for o mesmo que o sysroot padrão, esse método vai retornar None. Pode retornar None.

target_gnu_system_name

string CcToolchainInfo.target_gnu_system_name

O nome do sistema GNU. Pode retornar None.

to_json

string CcToolchainInfo.to_json()

Descontinuado. Esta API foi descontinuada e será removida em breve. Não dependa dele. Ele está desativado com ---incompatible_struct_has_no_methods. Use essa flag para verificar se o código é compatível com a remoção iminente.
Cria uma string JSON com base no parâmetro de estrutura. Esse método só funciona se todos os elementos de struct (recursivamente) forem strings, números inteiros, booleanos, outros structs, uma lista desses tipos ou um dicionário com chaves e valores de string desses tipos. Aspas e novas linhas em strings são escapadas. Exemplos:
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"}}}
.

Descontinuado: use json.encode(x) ou json.encode_indent(x), que funcionam para valores diferentes de structs e não poluem o namespace do campo struct.

to_proto

string CcToolchainInfo.to_proto()

Descontinuado. Esta API foi descontinuada e será removida em breve. Não dependa dele. Ele está desativado com ---incompatible_struct_has_no_methods. Use essa flag para verificar se o código é compatível com a remoção iminente.
Cria uma mensagem de texto com base no parâmetro de estrutura. Esse método só funciona se todos os elementos do struct (recursivamente) forem strings, ints, booleans, outros structs ou dicionários ou listas desses tipos. Aspas e novas linhas em strings são escapadas. As chaves de estrutura são iteradas na ordem classificada. Exemplos:
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
# }

Descontinuado: use proto.encode_text(x).