अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है इस्तेमाल किए जा रहे C++ कंपाइलर के बारे में जानकारी.
सदस्य
- all_files
- ar_executable
- built_in_include_directories
- कंपाइलर
- compiler_executable
- सीपीयू
- 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कंपाइलर बाइनरी का पाथ.
सीपीयू
string CcToolchainInfo.cpuC++ टूलचेन का टारगेट सीपीयू.
None
को वापस किया जा सकता है.
dynamic_runtime_lib
depset CcToolchainInfo.dynamic_runtime_lib(feature_configuration)`डाइनैमिक_रनटाइम_लिब` एट्रिब्यूट से फ़ाइलें दिखाता है. इससे इस टूलचेन का इस्तेमाल इनपुट के तौर पर करके, उन्हें कार्रवाइयों में भेजा जा सकता है. कॉल करने वाला व्यक्ति यह जांच कर सकता है किfeature_config, `static_link_cpp_runtimes` सुविधा को चालू करता है (अगर नहीं किया गया है, तो `static_runtime_lib` और `डाइनैमिक_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++ टूलचेन और `--force_pic` बेज़ल विकल्प की मौजूदगी के आधार पर, हमें इस नियम के C++ कंपाइलेशन के लिए -fPIC लागू करना चाहिए या नहीं.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
feature_configuration
|
ज़रूरी है सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी की जानी है. |
nm_executable
string CcToolchainInfo.nm_executablenm बाइनरी का पाथ.
objcopy_executable
string CcToolchainInfo.objcopy_executableobjcopy बाइनरी का पाथ.
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` और `डाइनैमिक_runtime_lib` का इस्तेमाल नहीं करना चाहिए). साथ ही, डाइनैमिक लिंकिंग मोड चालू होने पर, `डाइनैमिक_runtime_lib` का इस्तेमाल करें.
पैरामीटर
पैरामीटर | ब्यौरा |
---|---|
feature_configuration
|
ज़रूरी है सुविधा के कॉन्फ़िगरेशन के बारे में क्वेरी की जानी है. |
strip_executable
string CcToolchainInfo.strip_executableस्ट्रिप बाइनरी का पाथ.
सिस्टमूट
string CcToolchainInfo.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) का इस्तेमाल करें.