CcToolchainInfo

Laporkan masalah Lihat sumber

Informasi tentang compiler C++ yang digunakan.

Anggota

all_files

depset CcToolchainInfo.all_files

Menampilkan semua file toolchain (sehingga file tersebut dapat diteruskan ke tindakan menggunakan toolchain ini sebagai input).

ar_executable

string CcToolchainInfo.ar_executable

Jalur ke biner ar.

built_in_include_directories

list CcToolchainInfo.built_in_include_directories

Menampilkan daftar direktori bawaan compiler.

kompilator

string CcToolchainInfo.compiler

Compiler C++. Dapat menampilkan None.

compiler_executable

string CcToolchainInfo.compiler_executable

Jalur ke biner compiler.

cpu

string CcToolchainInfo.cpu

CPU target dari toolchain C++. Dapat menampilkan None.

dynamic_runtime_lib

depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)

Menampilkan file dari atribut `dynamic_runtime_lib` (sehingga file tersebut dapat diteruskan ke tindakan menggunakan toolchain ini sebagai input). Pemanggil dapat memeriksa apakah feature_configuration mengaktifkan fitur `static_link_cpp_runtimes` (jika tidak, `static_runtime_lib` atau `dynamic_runtime_lib` harus digunakan), dan menggunakan `static_runtime_lib` jika mode penautan statis aktif.

Parameter

Parameter Deskripsi
feature_configuration diperlukan
Konfigurasi fitur yang akan dikueri.

gcov_executable

string CcToolchainInfo.gcov_executable

Jalur ke biner gcov.

ld_executable

string CcToolchainInfo.ld_executable

Jalur ke biner ld.

libc

string CcToolchainInfo.libc

String versi libc. Dapat menampilkan None.

needs_pic_for_dynamic_libraries

bool CcToolchainInfo.needs_pic_for_dynamic_libraries(feature_configuration)

Menampilkan nilai benar jika kompilasi aturan ini harus menerapkan -fPIC, salah jika jika tidak. Menentukan apakah kita harus menerapkan -fPIC untuk kompilasi C++ aturan ini, bergantung pada toolchain C++ dan keberadaan opsi `--force_pic` Bazel.

Parameter

Parameter Deskripsi
feature_configuration diperlukan
Konfigurasi fitur yang akan dikueri.

nm_executable

string CcToolchainInfo.nm_executable

Jalur ke biner nm.

objcopy_executable

string CcToolchainInfo.objcopy_executable

Jalur ke biner objcopy.

objdump_executable

string CcToolchainInfo.objdump_executable

Jalur ke biner objdump.

preprocessor_executable

string CcToolchainInfo.preprocessor_executable

Jalur ke biner praprosesor.

static_runtime_lib

depset CcToolchainInfo.static_runtime_lib(feature_configuration)

Menampilkan file dari atribut `static_runtime_lib` (sehingga file dapat diteruskan ke tindakan menggunakan toolchain ini sebagai input). Pemanggil harus memeriksa apakah feature_configuration mengaktifkan fitur `static_link_cpp_runtimes` (jika tidak, `static_runtime_lib` atau `dynamic_runtime_lib` tidak boleh digunakan), dan menggunakan `dynamic_runtime_lib` jika mode penautan dinamis aktif.

Parameter

Parameter Deskripsi
feature_configuration diperlukan
Konfigurasi fitur yang akan dikueri.

strip_executable

string CcToolchainInfo.strip_executable

Jalur ke biner strip.

sysroot

string CcToolchainInfo.sysroot

Menampilkan sysroot yang akan digunakan. Jika compiler toolchain tidak mendukung sysroot yang berbeda, atau sysroot sama dengan sysroot default, metode ini akan menampilkan None. Dapat menampilkan None.

target_gnu_system_name

string CcToolchainInfo.target_gnu_system_name

Nama Sistem GNU. Dapat menampilkan None.

to_json

string CcToolchainInfo.to_json()

Tidak digunakan lagi. API ini tidak digunakan lagi dan akan segera dihapus. Jangan bergantung pada hal itu. Fungsi ini dinonaktifkan dengan ---incompatible_struct_has_no_methods. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan yang akan segera dilakukan.
Membuat string JSON dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (secara rekursif) berupa string, int, boolean, struct lainnya, daftar jenis ini atau kamus dengan kunci string dan nilai jenis ini. Kutipan dan baris baru dalam string akan di-escape. Contoh:
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"}}}
.

Tidak digunakan lagi: sebagai gantinya, gunakan json.encode(x) atau json.encode_indent(x), yang berfungsi untuk nilai selain struct dan tidak mencemari namespace kolom struct.

to_proto

string CcToolchainInfo.to_proto()

Tidak digunakan lagi. API ini tidak digunakan lagi dan akan segera dihapus. Jangan bergantung pada hal itu. Fungsi ini dinonaktifkan dengan ---incompatible_struct_has_no_methods. Gunakan tanda ini untuk memverifikasi bahwa kode Anda kompatibel dengan penghapusan yang akan segera dilakukan.
Membuat pesan teks dari parameter struct. Metode ini hanya berfungsi jika semua elemen struct (secara rekursif) berupa string, int, boolean, struct atau dikte lain, atau daftar berjenis ini. Kutipan dan baris baru dalam string akan di-escape. Kunci struct diiterasi dalam urutan yang diurutkan. Contoh:
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
# }

Tidak digunakan lagi: gunakan proto.encode_text(x) sebagai gantinya.