पैसे चुकाकर बने सदस्य
- 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सभी टूलचेन फ़ाइलें लौटाता है (ताकि उन्हें इनपुट के रूप में इस टूलचेन का इस्तेमाल करके कार्रवाइयों को पास किया जा सके).
ar_executable
string CcToolchainInfo.ar_executablear बाइनरी का पाथ.
built_in_include_directories
list CcToolchainInfo.built_in_include_directoriesकंपाइलर की बिल्ट-इन डायरेक्ट्री की सूची दिखाता है.
कंपाइलर
string CcToolchainInfo.compilerC++ कंपाइलर.
None
वापस कर सकता है.
compiler_executable
string CcToolchainInfo.compiler_executableकंपाइलर बाइनरी का पाथ.
cpu
string CcToolchainInfo.cpuC++ टूलचेन के सीपीयू को टारगेट करें.
None
वापस कर सकता है.
dynamic_runtime_lib
depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)`Dynamic_runtime_lib` एट्रिब्यूट से फ़ाइलें मिलती हैं, ताकि उन्हें इनपुट के तौर पर इस टूलचेन का इस्तेमाल करके कार्रवाइयों को भेजा जा सके. कॉलर यह जांच कर सकता है कि सुविधा_कॉन्फ़िगरेशन, `static_link_cpp_runtimes` सुविधा को चालू करता है या नहीं. ऐसा न हो, तो `static_runtime_lib` और `Dynamic_runtime_lib`, दोनों का इस्तेमाल करने की ज़रूरत नहीं है. साथ ही, स्टैटिक लिंकिंग मोड चालू होने पर `static_runtime_lib` का इस्तेमाल करना होगा.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
feature_configuration
|
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी करना ज़रूरी है. |
gcov_executable
string CcToolchainInfo.gcov_executablegcov बाइनरी का पाथ.
ld_executable
string CcToolchainInfo.ld_executableld बाइनरी का पाथ.
Libc
string CcToolchainInfo.libclibc वर्शन स्ट्रिंग.
None
वापस कर सकता है.
needs_pic_for_dynamic_libraries
bool CcToolchainInfo.needs_pic_for_dynamic_libraries(feature_configuration)अगर इस नियम के कंपाइलेशन -fPIC लागू होते हैं, तो 'सही' दिखाता है. ऐसा न होने पर 'गलत' दिखाता है. यह तय करता है कि क्या हमें इस नियम के C++ कंपाइलेशन के लिए, -fPIC लागू करना चाहिए. यह C++ टूलचेन और `--force_pic` Bazel विकल्प की मौजूदगी पर निर्भर करता है.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
feature_configuration
|
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी करना ज़रूरी है. |
nm_executable
string CcToolchainInfo.nm_executablenm बाइनरी का पाथ.
objcopy_executable
string CcToolchainInfo.objcopy_executableऑब्जकॉपी बाइनरी का पाथ.
objdump_executable
string CcToolchainInfo.objdump_executableobjdump बाइनरी का पाथ.
preprocessor_executable
string CcToolchainInfo.preprocessor_executableप्रीप्रोसेसर बाइनरी का पाथ.
static_runtime_lib
depset CcToolchainInfo.static_runtime_lib(feature_configuration)`static_runtime_lib` एट्रिब्यूट से फ़ाइलें दिखाता है, ताकि उन्हें इनपुट के तौर पर इस टूलचेन का इस्तेमाल करके कार्रवाइयों को भेजा जा सके. कॉल करने वाले (कॉलर) को यह जांच करनी चाहिए किfeature_config `static_link_cpp_runtimes` सुविधा को चालू करता है या नहीं. अगर चालू नहीं है, तो `static_runtime_lib` और `Dynamic_runtime_lib`, दोनों का इस्तेमाल नहीं करना चाहिए. साथ ही, डाइनैमिक लिंकिंग मोड चालू होने पर `Dynamic_runtime_lib` का इस्तेमाल करना चाहिए.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
feature_configuration
|
सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी करना ज़रूरी है. |
strip_executable
string CcToolchainInfo.strip_executableस्ट्रिप बाइनरी का पाथ.
सिरूट
string CcToolchainInfo.sysrootइस्तेमाल किया जाने वाला sysroot लौटाता है. अगर टूलचेन कंपाइलर अलग-अलग सिस्टरूट के साथ काम नहीं करता है या सिसरूट, डिफ़ॉल्ट सिस्टम की तरह ही है, तो यह तरीका
None
दिखाता है.
None
वापस कर सकता है.
target_gnu_system_name
string CcToolchainInfo.target_gnu_system_nameGNU सिस्टम का नाम.
None
वापस कर सकता है.
to_json
string CcToolchainInfo.to_json()अब काम नहीं करता. इस एपीआई के इस्तेमाल पर रोक लगा दी गई है और इसे जल्द ही हटा दिया जाएगा. कृपया इस पर निर्भर न रहें. यह
---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()अब काम नहीं करता. इस एपीआई के इस्तेमाल पर रोक लगा दी गई है और इसे जल्द ही हटा दिया जाएगा. कृपया इस पर निर्भर न रहें. यह
---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) का इस्तेमाल करें.