ข้อมูลเกี่ยวกับคอมไพเลอร์ C++ ที่ใช้
สมาชิก
- all_files
- ar_executable
- built_in_include_directories
- คอมไพเลอร์
- compiler_executable
- CPU
- dynamic_runtime_lib
- gcov_executable
- ld_executable
- libc
- needs_pic_for_dynamic_libraries
- nm_executable
- objcopy_executable
- objdump_executable
- preprocessor_executable
- static_runtime_lib
- strip_executable
- ซิรูท
- target_gnu_system_name
- to_json
- to_proto
all_files
depset CcToolchainInfo.all_filesแสดงไฟล์ Toolchain ทั้งหมด (เพื่อให้ส่งผ่านไปยังการทำงานโดยใช้ Toolchain นี้เป็นอินพุตได้)
ar_executable
string CcToolchainInfo.ar_executableเส้นทางไปยังไบนารี ar
built_in_include_directories
list CcToolchainInfo.built_in_include_directoriesแสดงผลรายการไดเรกทอรีในตัวของคอมไพเลอร์
คอมไพเลอร์
string CcToolchainInfo.compilerคอมไพเลอร์ C++ อาจส่งคืน
None
compiler_executable
string CcToolchainInfo.compiler_executableเส้นทางไปยังไบนารีของคอมไพเลอร์
cpu
string CcToolchainInfo.cpuCPU เป้าหมายของเครื่องมือเชน C++ อาจส่งคืน
None
dynamic_runtime_lib
depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)แสดงผลไฟล์จากแอตทริบิวต์ "dynamic_runtime_lib" (เพื่อให้ระบบส่งไฟล์ไปยังการดำเนินการโดยใช้ Toolchain นี้เป็นอินพุตได้) ผู้โทรจะตรวจสอบได้ว่า 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 ไม่เช่นนั้นจะเป็นเท็จ กำหนดว่าเราควรจะใช้ -fPIC สำหรับการรวบรวม C++ ของกฎนี้หรือไม่ โดยขึ้นอยู่กับเครื่องมือ C++ และการมีตัวเลือก "--force_pic" Bazel
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
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" (เพื่อให้ระบบส่งไฟล์ไปยังการดำเนินการโดยใช้ Toolchain นี้เป็นอินพุตได้) ผู้โทรควรตรวจสอบว่า feature_configuration เปิดใช้ฟีเจอร์ "static_link_cpp_runtimes" หรือไม่ (หากไม่ใช่ ก็ไม่ควรใช้ "static_runtime_lib" และ "dynamic_runtime_lib") และใช้ "dynamic_runtime_lib" หากใช้โหมดการลิงก์แบบไดนามิกอยู่
พารามิเตอร์
พารามิเตอร์ | คำอธิบาย |
---|---|
feature_configuration
|
ต้องระบุ การกำหนดค่าฟีเจอร์ที่จะค้นหา |
strip_executable
string CcToolchainInfo.strip_executableเส้นทางไปยังไบนารีของ Strip
ซิรูท
string CcToolchainInfo.sysrootแสดง Sysroot ที่จะใช้ หากคอมไพเลอร์ Toolchain ของ ไม่รองรับ 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 วิธีนี้ใช้งานได้เฉพาะเมื่อองค์ประกอบ Struct ทั้งหมด (เกิดซ้ำ) เป็นสตริง, ints, บูลีน, Struct อื่นๆ, รายการประเภทเหล่านี้ หรือพจนานุกรมที่มีคีย์สตริงและค่าในประเภทเหล่านี้ ระบบจะใช้อักขระหลีกกับเครื่องหมายคำพูดและบรรทัดใหม่ในสตริง ตัวอย่าง:
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) แทน ซึ่งใช้ได้กับค่าอื่นที่ไม่ใช่ Struct และไม่ทําให้เนมสเปซของช่อง Struct เสียไป
to_proto
string CcToolchainInfo.to_proto()เลิกใช้งาน เลิกใช้งาน API นี้แล้ว และจะนำออกเร็วๆ นี้ โปรดอย่าพึ่งพา ถูกปิดใช้ด้วย
---incompatible_struct_has_no_methods
ใช้ธงนี้เพื่อยืนยันว่าโค้ดของคุณเข้ากันได้กับการนำออกในเร็วๆ นี้ สร้าง SMS จากพารามิเตอร์ Struct วิธีนี้ใช้งานได้เฉพาะเมื่อองค์ประกอบ Struct ทั้งหมด (เกิดซ้ำ) เป็นสตริง, ints, บูลีน, Struct อื่นๆ หรือ dicts หรือรายการในประเภทเหล่านี้ ระบบจะใช้อักขระหลีกกับเครื่องหมายคำพูดและบรรทัดใหม่ในสตริง คีย์โครงสร้างจะทำซ้ำตามลำดับที่จัดเรียง ตัวอย่าง:
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 # }
เลิกใช้งานแล้ว: ใช้ protocol.encode_text(x) แทน