अंग्रेज़ीफ्रेंचस्पेनिश

Ad


ऑनवर्क्स फ़ेविकॉन

h2xs - क्लाउड में ऑनलाइन

उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर पर ऑनवर्क्स मुफ्त होस्टिंग प्रदाता में h2xs चलाएं

यह कमांड h2xs है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।

कार्यक्रम:

नाम


h2xs - .h C हेडर फ़ाइलों को पर्ल एक्सटेंशन में कनवर्ट करें

SYNOPSIS


h2xs [विकल्प ...] [हेडरफ़ाइल ... [अतिरिक्त_पुस्तकालय]]

h2xs -h|-?|--मदद

वर्णन


h2xs C हेडर फ़ाइलों से एक पर्ल एक्सटेंशन बनाता है। विस्तार में फ़ंक्शन शामिल होंगे
जिसका उपयोग C हेडर में मौजूद किसी भी #define स्टेटमेंट के मान को पुनः प्राप्त करने के लिए किया जा सकता है
फाइलें.

RSI मोड्यूल का नाम एक्सटेंशन के नाम के लिए उपयोग किया जाएगा. यदि मॉड्यूल_नाम नहीं है
आपूर्ति की गई है तो पहले हेडर फ़ाइल का नाम पहले अक्षर के साथ उपयोग किया जाएगा
पूंजीकृत.

यदि एक्सटेंशन को अतिरिक्त पुस्तकालयों की आवश्यकता हो सकती है, तो उन्हें यहां शामिल किया जाना चाहिए। विस्तृति
Makefile.PL यह जाँचने का ध्यान रखेगा कि क्या पुस्तकालय वास्तव में मौजूद हैं और कैसे हैं
लोड किया जाना चाहिए. अतिरिक्त पुस्तकालयों को -lm -lposix, आदि फॉर्म में निर्दिष्ट किया जाना चाहिए।
ठीक वैसे ही जैसे cc कमांड लाइन पर होता है। डिफ़ॉल्ट रूप से, Makefile.PL इसके माध्यम से खोज करेगा
कॉन्फिगर द्वारा निर्धारित लाइब्रेरी पथ। तर्कों को शामिल करके उस पथ को बढ़ाया जा सकता है
फार्म का -एल/अन्य/लाइब्रेरी/पथ अतिरिक्त-पुस्तकालय तर्क में।

इसके नाम के बावजूद, h2xs इसका उपयोग कंकाल शुद्ध पर्ल मॉड्यूल बनाने के लिए भी किया जा सकता है। देखें
-X विकल्प.

विकल्प


-A, --छोड़ें-autoload
सभी ऑटोलॉड सुविधाओं को छोड़ दें. ये वैसा ही है -c लेकिन हटा भी देता है
.pm फ़ाइल से "ऑटोलोडर का उपयोग करें" कथन।

-B, --बीटा संस्करण
अल्फ़ा/बीटा शैली संस्करण संख्या का उपयोग करें. जब तक कि संस्करण संख्या "0.00_01" न हो जाए
-v अधिकृत है।

-C, -- परिवर्तन छोड़ें
की रचना को छोड़ देता है परिवर्तन फ़ाइल, और POD टेम्पलेट में एक इतिहास अनुभाग जोड़ता है।

-F, --सीपीपी-झंडे=झंडे जोड़ें
फ़ंक्शन के लिए हेडर स्कैन करते समय सी प्रीप्रोसेसर को निर्दिष्ट करने के लिए अतिरिक्त झंडे
घोषणाएँ इन विकल्पों को जनरेट में लिखें मेकफाइल.पीएल भी है.

-M, --फंक-मास्क=नियमित अभिव्यक्ति
प्रोसेस करने के लिए फ़ंक्शंस/मैक्रोज़ का चयन करता है।

-O, --ओवरराइट-ठीक है
पहले से मौजूद एक्सटेंशन निर्देशिका को अधिलेखित करने की अनुमति देता है।

-P, --omit-pod
ऑटोजेनरेटेड स्टब पीओडी अनुभाग को हटा दें।

-X, --omit-XS
XS भाग को हटा दें. एक कंकाल शुद्ध पर्ल मॉड्यूल उत्पन्न करने के लिए उपयोग किया जाता है। "-सी" और "-एफ" हैं
अंतर्निहित रूप से सक्षम।

-a, --जेन-एक्सेसर्स
संरचना और यूनियनों के प्रत्येक तत्व के लिए एक एक्सेसर विधि उत्पन्न करें। उत्पन्न
विधियों का नाम तत्व के नाम पर रखा गया है; का वर्तमान मान लौटाएगा
तत्व यदि अतिरिक्त तर्कों के बिना बुलाया जाता है; और तत्व को पर सेट कर देगा
अतिरिक्त तर्क के साथ बुलाए जाने पर आपूर्ति किया गया मान (और नया मान लौटाएं)।
एंबेडेड संरचनाओं और यूनियनों को पूर्ण के बजाय सूचक के रूप में लौटाया जाता है
श्रृंखलाबद्ध कॉल की सुविधा के लिए संरचना।

ये सभी विधियाँ संरचना के लिए पीटीआर प्रकार पर लागू होती हैं; इसके अतिरिक्त दो तरीके
संरचना प्रकार के लिए ही बनाए गए हैं, "_to_ptr" जो एक Ptr प्रकार लौटाता है
एक ही संरचना की ओर इशारा करते हुए, और एक नया निर्माण करने और वापस करने के लिए एक "नई" विधि
संरचना, शून्य से प्रारंभ की गई।

-b, --compat-संस्करण=संस्करण
एक .pm फ़ाइल उत्पन्न करता है जो निर्दिष्ट पर्ल संस्करण के साथ पश्चगामी संगत है।

संस्करण <5.6.0 के लिए, परिवर्तन हैं।
- 'हमारे' का कोई उपयोग नहीं (इसके बजाय 'वर्स का उपयोग करें' का उपयोग करता है)
- कोई 'उपयोग चेतावनियाँ' नहीं

आपके द्वारा उपयोग किए जा रहे पर्ल के संस्करण से उच्चतर संगतता संस्करण निर्दिष्ट करना
h2xs चलाने पर कोई प्रभाव नहीं पड़ेगा. यदि अनिर्दिष्ट h2xs के साथ संगतता डिफ़ॉल्ट होगी
पर्ल का वह संस्करण जिसका उपयोग आप h2xs चलाने के लिए कर रहे हैं।

-c, --omit-स्थिरांक
.xs फ़ाइल से "constant()" और संबंधित विशिष्ट "AUTOLOAD" को हटा दें
.pm फ़ाइल.

-d, --डिबगिंग
संदेशों को डीबग करना चालू करें.

-e, --छोड़ें-enums=[नियमित अभिव्यक्ति]
If नियमित अभिव्यक्ति नहीं दिया गया है, C में परिभाषित सभी स्थिरांकों को छोड़ दें
गणना अन्यथा केवल उन स्थिरांकों को छोड़ें जो किसी एनम में परिभाषित हैं
नाम मेल खाता है नियमित अभिव्यक्ति.

जबसे नियमित अभिव्यक्ति वैकल्पिक है, सुनिश्चित करें कि इस स्विच के बाद at आता है
यदि आप छोड़ दें तो कम से कम एक अन्य स्विच नियमित अभिव्यक्ति और कुछ तर्क लंबित हैं
जैसे हेडर-फ़ाइल नाम. यह ठीक है:

h2xs -e -n मॉड्यूल::Foo foo.h

यह ठीक नहीं है:

h2xs -n मॉड्यूल::Foo -e foo.h

उत्तरार्द्ध में, foo.h को इस रूप में लिया जाता है नियमित अभिव्यक्ति.

-f, --बल
किसी हेडर के लिए एक्सटेंशन बनाने की अनुमति देता है, भले ही वह हेडर नहीं मिला हो
मानक में निर्देशिकाएँ शामिल हैं।

-g, --वैश्विक
.xs फ़ाइल में स्थिर डेटा को सुरक्षित रूप से संग्रहीत करने के लिए कोड शामिल करें। एक्सटेंशन जो नहीं करते
स्थैतिक डेटा का उपयोग इस विकल्प को अनदेखा कर सकता है।

-h, -?, --मदद
इस h2xs के लिए उपयोग, सहायता और संस्करण प्रिंट करें और बाहर निकलें।

-k, --omit-const-func
"कॉन्स्ट" के रूप में घोषित फ़ंक्शन तर्कों के लिए, जेनरेट में कॉन्स्ट विशेषता को छोड़ दें
एक्सएस कोड.

-m, --जीन-बंधे-var
प्रयोगात्मक: हेडर फ़ाइल में घोषित प्रत्येक वेरिएबल के लिए, एक पर्ल घोषित करें
एक ही नाम का वेरिएबल जादुई रूप से C वेरिएबल से बंधा हुआ है।

-n, --नाम=मोड्यूल का नाम
एक्सटेंशन के लिए उपयोग किए जाने वाले नाम को निर्दिष्ट करता है, उदाहरण के लिए, -n RPC::DCE

-o, --अपारदर्शी-रे=नियमित अभिव्यक्ति
रेगुलर एक्सप्रेशन से मेल खाने वाले C प्रकारों के लिए "अपारदर्शी" डेटा प्रकार का उपयोग करें, भले ही
ये प्रकार "टाइपडेफ़" हैं - टाइपमैप्स के प्रकारों के समतुल्य। प्रयोग नहीं करना चाहिए
बिना -x.

यह उपयोगी हो सकता है, मान लीजिए, ऐसे प्रकार जो "टाइपडेफ़" हैं - पूर्णांक के समतुल्य हो सकते हैं
ओएस-संबंधित हैंडल का प्रतिनिधित्व करते हैं, और कोई इन हैंडल के साथ ओओ-वे में काम करना चाह सकता है,
जैसा कि "$हैंडल->do_something()" में है। "-ओ" का प्रयोग करें। यदि आप सब कुछ संभालना चाहते हैं
अपारदर्शी प्रकार के रूप में "टाइपडिफ़" प्रकार।

टाइप-टू-मैच को सफेद कर दिया गया है (अल्पविराम को छोड़कर, जिसमें पहले कोई खाली जगह नहीं है
उन्हें, और एकाधिक "*" जिनके बीच कोई रिक्त स्थान नहीं है)।

-p, --निकालें-उपसर्ग=उपसर्ग
एक उपसर्ग निर्दिष्ट करें जिसे पर्ल फ़ंक्शन नामों से हटाया जाना चाहिए, उदाहरण के लिए,
-p sec_rgy_ यह XS सेट करता है उपसर्ग कीवर्ड और फ़ंक्शंस से उपसर्ग हटा देता है
जो "स्थिर()" तंत्र के माध्यम से स्वतः लोड होते हैं।

-s, -- स्थिरांक-उप=उप1,उप2
के साथ ऑटोलोड करने के बजाय निर्दिष्ट मैक्रोज़ के लिए एक पर्ल सबरूटीन बनाएं
लगातार() सबरूटीन. इन मैक्रोज़ को रिटर्न प्रकार का माना जाता है टैंक *,
उदाहरण के लिए, -s sec_rgy_wildcard_name, sec_rgy_wildcard_sid.

-t, --डिफ़ॉल्ट-प्रकार=टाइप
आंतरिक प्रकार निर्दिष्ट करें कि लगातार() मैक्रोज़ के लिए तंत्र का उपयोग करता है। डिफ़ॉल्ट
IV (हस्ताक्षरित पूर्णांक) है। वर्तमान में हेडर स्कैनिंग के दौरान सभी मैक्रोज़ पाए गए
प्रक्रिया इस प्रकार की मानी जाएगी. "h2xs" के भविष्य के संस्करणों को लाभ हो सकता है
शिक्षित अनुमान लगाने की क्षमता.

--उपयोग-नए-परीक्षण
. --compat-संस्करण (-b) मौजूद है जेनरेट किए गए परीक्षण "टेस्ट::अधिक" का उपयोग करेंगे
"परीक्षण" के बजाय जो 5.6.2 से पहले के संस्करणों के लिए डिफ़ॉल्ट है। "परीक्षण::अधिक" होगा
उत्पन्न "Makefile.PL" में PREREQ_PM में जोड़ा जाए।

--उपयोग-पुराने-परीक्षण
पुराने "टेस्ट" मॉड्यूल का उपयोग करने वाले परीक्षण कोड की पीढ़ी को बाध्य करेगा।

--स्किप-निर्यातक
"निर्यातक" का प्रयोग न करें और/या किसी भी प्रतीक का निर्यात न करें।

--स्किप-पीपीपोर्ट
"डेवेल::पीपीपोर्ट" का उपयोग न करें: पुराने संस्करण में कोई पोर्टेबिलिटी नहीं।

--स्किप-ऑटोलोडर
मॉड्यूल "ऑटोलोडर" का उपयोग न करें; लेकिन रखो लगातार() फ़ंक्शन और "उप
AUTOLOAD" स्थिरांक के लिए।

--स्किप-सख्त
"कठोर" शब्द का प्रयोग न करें।

--छोड़ें-चेतावनी
व्यावहारिक "चेतावनी" का प्रयोग न करें।

-v, --संस्करण=संस्करण
इस एक्सटेंशन के लिए संस्करण संख्या निर्दिष्ट करें. यह संस्करण संख्या इसमें जोड़ी गई है
टेम्पलेट्स. यदि "-बी" निर्दिष्ट है तो डिफ़ॉल्ट 0.01 है, या 0.00_01 है। संस्करण
निर्दिष्ट संख्यात्मक होना चाहिए.

-x, --ऑटोजेन-xsubs
हेडर फ़ाइल में फ़ंक्शन घोषणाओं के आधार पर स्वचालित रूप से XSUB उत्पन्न करें।
पैकेज "सी::स्कैन" स्थापित किया जाना चाहिए। यदि यह विकल्प निर्दिष्ट है, तो का नाम
हेडर फ़ाइल "NAME1,NAME2" जैसी दिख सकती है। इस स्थिति में इसके स्थान पर NAME1 का उपयोग किया जाता है
निर्दिष्ट स्ट्रिंग, लेकिन XSUB केवल फ़ाइल से शामिल घोषणाओं के लिए उत्सर्जित होते हैं
नाम2.

ध्यान दें कि फ़ंक्शंस के लिए कुछ प्रकार के तर्क/रिटर्न-वैल्यू का परिणाम हो सकता है
XSUB-घोषणाएँ/टाइपमैप-प्रविष्टियाँ जिन्हें हाथ से संपादित करने की आवश्यकता है। ऐसी वस्तुएं हो सकती हैं जो
को/से पॉइंटर (जैसे "लॉन्ग लॉन्ग"), पॉइंटर्स से फ़ंक्शंस, या में परिवर्तित नहीं किया जा सकता है
सरणियाँ। "की सीमाएँ" अनुभाग भी देखें -x".

उदाहरण


# डिफ़ॉल्ट व्यवहार, एक्सटेंशन रुसर्स है
h2xs rpcsvc/rusers

# वही, लेकिन एक्सटेंशन RUSERS है
h2xs -n रूसर्स rpcsvc/rusers

# एक्सटेंशन rpcsvc::rusers है. अभी भी मिलता है
h2xs rpcsvc::rusers

# एक्सटेंशन ONC::RPC है. अभी भी मिलता है
h2xs -n ONC::RPC rpcsvc/rusers

# बिना स्थिरांक() या ऑटोलोड के
h2xs -c rpcsvc/rusers

# RPC नामक एक्सटेंशन के लिए टेम्पलेट बनाता है
h2xs -cfn RPC

# एक्सटेंशन ONC::RPC है.
h2xs -cfn ONC::RPC

# एक्सटेंशन एक शुद्ध पर्ल मॉड्यूल है जिसमें कोई XS कोड नहीं है।
h2xs -X मेरा::मॉड्यूल

# एक्सटेंशन Lib::Foo है जो कम से कम Perl5.005_03 के साथ काम करता है।
# स्थिरांक सभी #परिभाषाओं और एनमों के लिए बनाए गए हैं जिन्हें h2xs पा सकते हैं
# foo.h में.
h2xs -b 5.5.3 -n Lib::Foo foo.h

# एक्सटेंशन Lib::Foo है जो कम से कम Perl5.005_03 के साथ काम करता है।
# स्थिरांक सभी #परिभाषाओं के लिए बनाए जाते हैं, लेकिन केवल गणनाओं के लिए
# जिनके नाम 'बार_' से शुरू नहीं होते.
h2xs -b 5.5.3 -e '^bar_' -n Lib::Foo foo.h

# Makefile.PL लाइब्रेरी -lrpc की तलाश करेगा
# अतिरिक्त निर्देशिका /opt/net/lib
h2xs rpcsvc/rusers -L/opt/net/lib -lrpc

# एक्सटेंशन DCE::rgynbase है
# उपसर्ग "sec_rgy_" को पर्ल फ़ंक्शन नामों से हटा दिया गया है
h2xs -n DCE::rgynbase -p sec_rgy_ dce/rgynbase

# एक्सटेंशन DCE::rgynbase है
# उपसर्ग "sec_rgy_" को पर्ल फ़ंक्शन नामों से हटा दिया गया है
# sec_rgy_wildcard_name और के लिए सबरूटीन बनाए गए हैं
# सेकंड_रगी_वाइल्डकार्ड_सिड
h2xs -n DCE::rgynbase -p sec_rgy_ \
-s sec_rgy_wildcard_name, sec_rgy_wildcard_sid dce/rgynbase

# perl.h में परिभाषित किए बिना, लेकिन फ़ंक्शन घोषणाओं के साथ XS बनाएं
# perl.h से दृश्यमान. एक्सटेंशन का नाम perl1 है.
# perl.h को स्कैन करते समय, -DEXT=बाहरी -DdEXT= -DINIT(x)= को परिभाषित करें
# नीचे अतिरिक्त बैकस्लैश क्योंकि स्ट्रिंग को शेल में पास किया गया है।
# ध्यान दें कि पर्ल हेडर फ़ाइलों वाली एक निर्देशिका होगी
# पथ शामिल करने के लिए स्वचालित रूप से जोड़ा जाए।
h2xs -xAn perl1 -F "-DEXT=बाहरी -DdEXT= -DINIT\(x\)=" perl.h

# proto.h में फ़ंक्शन घोषणा के समान, जैसा कि perl.h से दिखाई देता है।
h2xs -xAn perl2 perl.h, proto.h

# वही लेकिन केवल वही फ़ंक्शन चुनें जो /^av_/ से मेल खाते हों
h2xs -M '^av_' -xAn perl2 perl.h,proto.h

# वही लेकिन एसवी* आदि को "अपारदर्शी" प्रकार के रूप में मानें
h2xs -o '^[S]V \*$' -M '^av_' -xAn perl2 perl.h,proto.h

विस्तार आधारित on .h और .c फ़ाइलों
मान लीजिए कि आपके पास कुछ सी फ़ाइलें हैं जो कुछ कार्यक्षमता और संबंधित कार्यान्वित कर रही हैं
हेडर फ़ाइलें. एक एक्सटेंशन कैसे बनाएं जो इस कार्यक्षमता को सुलभ बनाता है
पर्ल? नीचे दिया गया उदाहरण मानता है कि हेडर फ़ाइलें हैं इंटरफ़ेस_सरल.एच और
इंटरफ़ेस_बालदार.एच, और आप चाहते हैं कि पर्ल मॉड्यूल को "Ext::Ension" नाम दिया जाए। अगर आपको चाहिये
कुछ प्रीप्रोसेसर निर्देशों और/या बाहरी पुस्तकालयों से लिंक करने के लिए, झंडे "-F" देखें,
"विकल्प" में "-L" और "-l"।

निर्देशिका का नाम ढूंढें
h2xs के डमी रन से प्रारंभ करें:

h2xs -Afn Ext::Ension

इस चरण का एकमात्र उद्देश्य आवश्यक निर्देशिकाएँ बनाना और आपको बताना है
इन निर्देशिकाओं के नाम. आउटपुट से आप देख सकते हैं कि निर्देशिका
विस्तार है विस्तार.

C फ़ाइलें कॉपी करें
अपनी हेडर फ़ाइलें और C फ़ाइलें इस निर्देशिका में कॉपी करें विस्तार.

एक्सटेंशन बनाएं
पुरानी स्वत: जेनरेट की गई फ़ाइलों को ओवरराइट करके h2xs चलाएँ:

h2xs -Oxan Ext::Ension इंटरफ़ेस_सरल.h इंटरफ़ेस_hairy.h

h2xs हेडर फ़ाइलों की तलाश करता है बाद एक्सटेंशन निर्देशिका में बदल रहा है, तो यह मिल जाएगा
आपकी हेडर फ़ाइलें ठीक हैं.

संग्रहित करें और परीक्षण करें
हमेशा की तरह, दौड़ें

सीडी एक्सटेंशन/संस्करण
पर्ल Makefile.PL
जिला बनाओ
बनाना
परीक्षण करें

संकेत
जितनी जल्दी हो सके "दूरी बनाओ" करना महत्वपूर्ण है। इस तरह आप आसानी से कर सकते हैं
मर्ज(1) यदि आप अपनी ".h" फ़ाइलों को संपादित करने का निर्णय लेते हैं तो स्वचालित रूप से जेनरेट की गई फ़ाइलों में आपके परिवर्तन
h2xs को पुनः चलाएँ।

जेनरेट किए गए दस्तावेज़ को संपादित करना न भूलें .pm फ़ाइल.

ऑटोजेनरेटेड फ़ाइलों को केवल कंकाल के रूप में मानें, आप बेहतर इंटरफेस का आविष्कार कर सकते हैं
h2xs जितना अनुमान लगा सकता है उससे कहीं अधिक।

इस अनुभाग को केवल एक दिशानिर्देश के रूप में मानें, h2xs के कुछ अन्य विकल्प बेहतर अनुकूल हो सकते हैं
आपकी ज़रूरतें।

वातावरण


कोई पर्यावरण चर का उपयोग नहीं किया जाता है।

onworks.net सेवाओं का उपयोग करके h2xs का ऑनलाइन उपयोग करें


फ्री सर्वर और वर्कस्टेशन

विंडोज और लाइनेक्स एप डाउनलोड करें

लिनक्स कमांड

Ad