Información de cadena de herramientas

Informar un problema Ver fuente

Información sobre el compilador de C++ que se usa.

Miembros

all_files

depset CcToolchainInfo.all_files

Muestra todos los archivos del conjunto de herramientas (por lo que se pueden pasar a acciones usando esta cadena de herramientas como entradas).

ar_executable

string CcToolchainInfo.ar_executable

La ruta al objeto binario ar.

built_in_include_directories

list CcToolchainInfo.built_in_include_directories

Muestra la lista de directorios integrados del compilador.

compilador

string CcToolchainInfo.compiler

Compilador C++. Puede devolver None.

compiler_executable

string CcToolchainInfo.compiler_executable

Es la ruta de acceso al objeto binario del compilador.

cpu

string CcToolchainInfo.cpu

CPU de destino de la cadena de herramientas de C++. Puede devolver None.

dynamic_runtime_lib

depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)

Devuelve los archivos del atributo `dynamic_runtime_lib` (para pasarlos a acciones usando esta cadena de herramientas como entradas). El llamador puede comprobar si feature_configuration habilita la función `static_link_cpp_runtimes` (de lo contrario, no es necesario usar `static_runtime_lib` ni `dynamic_runtime_lib`) y usar `static_runtime_lib` si el modo de vinculación estática está activo.

Parámetros

Parámetro Descripción
feature_configuration obligatorio
La configuración de funciones que se debe consultar.

gcov_executable

string CcToolchainInfo.gcov_executable

La ruta al objeto binario de gcov.

ld_executable

string CcToolchainInfo.ld_executable

Es la ruta al objeto binario ld.

libc

string CcToolchainInfo.libc

la cadena de versión libc. Puede devolver None.

needs_pic_for_dynamic_libraries

bool CcToolchainInfo.needs_pic_for_dynamic_libraries(feature_configuration)

Muestra true si las compilaciones de esta regla deben aplicar -fPIC, de lo contrario, false. Determina si debemos aplicar -fPIC para las compilaciones de C++ de esta regla según la cadena de herramientas de C++ y la presencia de la opción de Bazel “--force_pic”.

Parámetros

Parámetro Descripción
feature_configuration obligatorio
La configuración de funciones que se debe consultar.

nm_executable

string CcToolchainInfo.nm_executable

La ruta de acceso al objeto binario nm.

objcopy_executable

string CcToolchainInfo.objcopy_executable

Ruta al objeto binario objcopy.

objdump_executable

string CcToolchainInfo.objdump_executable

La ruta de acceso al objeto binario objdump.

preprocessor_executable

string CcToolchainInfo.preprocessor_executable

La ruta de acceso al objeto binario del preprocesador.

static_runtime_lib

depset CcToolchainInfo.static_runtime_lib(feature_configuration)

Muestra los archivos del atributo `static_runtime_lib` (para que se puedan pasar a acciones usando esta cadena de herramientas como entradas). El emisor debe comprobar si feature_configuration habilita la función `static_link_cpp_runtimes` (de lo contrario, no se deben usar `static_runtime_lib` ni `dynamic_runtime_lib`) y usar `dynamic_runtime_lib` si el modo de vinculación dinámica está activo.

Parámetros

Parámetro Descripción
feature_configuration obligatorio
La configuración de funciones que se debe consultar.

strip_executable

string CcToolchainInfo.strip_executable

Es la ruta al objeto binario de la tira.

sysroot

string CcToolchainInfo.sysroot

Muestra el sysroot que se usará. Si el compilador de la cadena de herramientas no admite diferentes sysroots o sysroot es el mismo que sysroot predeterminado, este método muestra None. Puede devolver None.

target_gnu_system_name

string CcToolchainInfo.target_gnu_system_name

Nombre del sistema GNU. Puede devolver None.

to_json

string CcToolchainInfo.to_json()

Obsoleto.. Esta API dejó de estar disponible y se quitará pronto. No dependas de ello. Está inhabilitada con ---incompatible_struct_has_no_methods. Usa esta marca para verificar que tu código sea compatible con la eliminación inminente.
Crea una string JSON a partir del parámetro struct. Este método solo funciona si todos los elementos de la estructura (de forma recurrente) son strings, ints, booleanos, otras estructuras, una lista de estos tipos o un diccionario con claves de string y valores de estos tipos. Las comillas y las líneas nuevas en las strings tienen formato de escape. Ejemplos:
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"}}}
.

Obsoleto: En su lugar, usa json.encode(x) o json.encode_indent(x), que funcionan para valores distintos de structs y no contaminan el espacio de nombres del campo struct.

to_proto

string CcToolchainInfo.to_proto()

Obsoleto.. Esta API dejó de estar disponible y se quitará pronto. No dependas de ello. Está inhabilitada con ---incompatible_struct_has_no_methods. Usa esta marca para verificar que tu código sea compatible con la eliminación inminente.
Crea un mensaje de texto a partir del parámetro struct. Este método solo funciona si todos los elementos de la estructura (de forma recurrente) son strings, ints, booleanos, otras estructuras, diccionarios o listas de estos tipos. Las comillas y las líneas nuevas en las strings tienen formato de escape. Las claves de struct se iteran en el orden ordenado. Ejemplos:
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
# }

Obsoleto: usa proto.encode_text(x) en su lugar.