Erlang 21

erlc




erlang

erlc

आदेश

erlc

कमांड सारांश

संकलक

विवरण

Erlang सिस्टम में सभी erlc को चलाने के लिए erlc प्रोग्राम एक सामान्य तरीका प्रदान करता है। प्रत्येक इनपुट फ़ाइल के विस्तार के आधार पर, erlc उपयुक्त संकलक को आमंत्रित करता है। चाहे जो भी संकलक का उपयोग किया जाता है, वही झंडे पैरामीटर प्रदान करने के लिए उपयोग किए जाते हैं, जैसे पथ और आउटपुट निर्देशिका शामिल हैं।

वर्तमान कार्यशील निर्देशिका, "." , संकलक चलाते समय कोड पथ में शामिल नहीं है। वर्तमान कार्य निर्देशिका से बीम फ़ाइलों को लोड करने से बचने के लिए जो संकलक द्वारा उपयोग किए जा रहे कंपाइलर या Erlang / OTP सिस्टम के साथ संभावित रूप से संघर्ष में हो सकते हैं।

निर्यात

erlc झंडे file1.ext file2.ext ...

एक या अधिक फ़ाइलों को संकलित करता है। फ़ाइलों में विस्तार शामिल होना चाहिए, उदाहरण के लिए, .erl लिए Erlang स्रोत कोड या येकल स्रोत कोड के लिए .yrl। Erlc एक्सटेंशन का उपयोग सही कंपाइलर को लागू करने के लिए करता है।

आम तौर पर उपयोगी झंडे

निम्नलिखित झंडे समर्थित हैं:

-I <Directory>

Directory में फ़ाइलों को शामिल करने के लिए कंपाइलर को खोजने का निर्देश देता है। एक -include या -include_lib निर्देशन का सामना करते समय, कंपाइलर निम्नलिखित निर्देशिकाओं में हेडर फ़ाइलों की खोज करता है:

  • "." , फ़ाइल सर्वर की वर्तमान कार्यशील निर्देशिका

  • संकलित फ़ाइल का आधार नाम

  • विकल्प का उपयोग करके निर्दिष्ट निर्देशिका -I ; अंतिम निर्दिष्ट निर्देशिका को पहले खोजा जाता है

-o <Directory>

वह निर्देशिका जहां आउटपुट फाइल रखने के लिए कंपाइलर होता है। वर्तमान कार्यशील निर्देशिका में चूक।

-D<Name>

एक स्थूल को परिभाषित करता है।

-D<Name>=<Value>

निर्दिष्ट मूल्य के साथ एक मैक्रो को परिभाषित करता है। मान किसी भी Erlang शब्द हो सकता है। प्लेटफ़ॉर्म के आधार पर, मान को उद्धृत करने की आवश्यकता हो सकती है यदि शेल स्वयं कुछ वर्णों की व्याख्या करता है। यूनिक्स पर, ट्यूल और सूचियों वाले शब्दों को उद्धृत किया जाना चाहिए। सभी प्लेटफार्मों पर रिक्त स्थान वाले शब्दों को उद्धृत किया जाना चाहिए।

-W<Error>

त्रुटियों में सभी चेतावनी देता है।

-W<Number>

Number लिए चेतावनी स्तर सेट करता है। 1 चूक। चेतावनियों को बंद करने के लिए, -W0 उपयोग -W0

-W

उसी के रूप में -W1 । चूक।

-v

क्रिया आउटपुट को सक्षम करता है।

-b <Output_type>

आउटपुट फ़ाइल के प्रकार को निर्दिष्ट करता है। Output_type आउटपुट फ़ाइल के फ़ाइल एक्सटेंशन के समान है, लेकिन अवधि के बिना। इस विकल्प को उन कंपाइलरों द्वारा नजरअंदाज कर दिया जाता है जिनके पास एकल आउटपुट स्वरूप होता है।

-smp

एसएमपी एमुलेटर का उपयोग कर संकलन। यह मूल कोड को संकलित करने के लिए मुख्य रूप से उपयोगी है, जिसे उसी रनटाइम सिस्टम के साथ संकलित किया जाना चाहिए जिस पर इसे चलाया जाना है।

-M

हेडर निर्भरता को ट्रैक करने के लिए एक मेकफाइल नियम का उत्पादन करता है। नियम को stdout लिए भेजा जाता है। कोई ऑब्जेक्ट फ़ाइल नहीं है।

-MMD

साइड-इफेक्ट के रूप में निर्भरता उत्पन्न करें। ऑब्जेक्ट फ़ाइल को सामान्य रूप में उत्पादित किया जाएगा। यह विकल्प विकल्प -M

-MF <Makefile>

विकल्प -M रूप में, सिवाय इसके कि Makefile को Makefile लिखा जाता Makefile । कोई ऑब्जेक्ट फ़ाइल नहीं है।

-MD

समान -M -MF <File>.Pbeam

-MT <Target>

विकल्प -M या -MF संयोजन में, Target लिए उत्सर्जित नियम का नाम बदल देता है।

-MQ <Target>

विकल्प -MT रूप में, सिवाय इसके कि वर्ण विशेष make/1 उद्धृत किए गए हैं।

-MP

विकल्प -M या -MF के साथ संयोजन में, प्रत्येक निर्भरता के लिए एक phony लक्ष्य जोड़ता है।

-MG

विकल्प -M या -MF के साथ संयोजन के रूप में, लापता हेडर को उत्पन्न फ़ाइलों के रूप में मानता है और उन्हें निर्भरता में जोड़ता है।

--

सिग्नल जो कोई और विकल्प का पालन नहीं करेंगे। बाकी तर्कों को फ़ाइलनाम के रूप में माना जाता है, भले ही वे हाइफ़न के साथ शुरू हों।

+<Term>

एक हाइफ़न के बजाय एक प्लस ( + ) से शुरू होने वाला झंडा एक एर्लांग शब्द में बदल जाता है और संकलक के पास अपरिवर्तित हो जाता है। उदाहरण के लिए, export_all संकलक के लिए विकल्प export_all निम्नानुसार निर्दिष्ट किया जा सकता है:

erlc +export_all file.erl

प्लेटफ़ॉर्म के आधार पर, मान को उद्धृत करने की आवश्यकता हो सकती है यदि शेल स्वयं कुछ वर्णों की व्याख्या करता है। यूनिक्स पर, ट्यूल और सूचियों वाले शब्दों को उद्धृत किया जाना चाहिए। सभी प्लेटफार्मों पर रिक्त स्थान वाले शब्दों को उद्धृत किया जाना चाहिए।

विशेष झंडे

निम्नलिखित झंडे विशेष स्थितियों में उपयोगी होते हैं, जैसे कि OTP सिस्टम का पुनर्निर्माण करना:

-pa <Directory>

लागू Erlang एमुलेटर में कोड पथ के सामने Directory को जोड़ता है। इसका उपयोग डिफ़ॉल्ट के बजाय किसी अन्य संकलक को आमंत्रित करने के लिए किया जा सकता है।

-pz <Directory>

लागू Erlang एमुलेटर में कोड पथ के लिए Directory को जोड़ता है।

समर्थित कंपाइलर

निम्नलिखित संकलक समर्थित हैं:

.erl

एर्लांग स्रोत कोड। यह एक .beam फ़ाइल .beam है।

विकल्प -P , -E , और -S +'P' , +'E' और +'S' बराबर हैं, सिवाय इसके कि उन्हें खोल से बचाने के लिए एकल उद्धरण शामिल करना आवश्यक नहीं है।

समर्थित विकल्प: -I , -o , -D , -v , -W , -b

.S

Erlang कोडांतरक स्रोत कोड। यह एक .beam फ़ाइल .beam है।

समर्थित विकल्प: .erl के .erl

.core

एर्लांग कोर सोर्स कोड। यह एक .beam फ़ाइल .beam है।

समर्थित विकल्प: .erl के .erl

.yrl

येक स्रोत कोड। यह एक .erl फ़ाइल .erl है।

विकल्प का उपयोग करें- -I एक फ़ाइल के नाम के साथ उस फ़ाइल को अनुकूलित प्रस्तावक फ़ाइल (विकल्प includefile ) के रूप में उपयोग करता includefile

समर्थित विकल्प: -o , -v , -I , -W

.mib

SNMP के लिए MIB। यह एक .bin फ़ाइल बनाता है।

समर्थित विकल्प: -I , -o , -W

.bin

SNMP के लिए एक संकलित MIB। यह एक .hrl फ़ाइल .hrl है।

समर्थित विकल्प: -o , -v

.rel

स्क्रिप्ट फाइल। यह एक बूट फ़ाइल उत्पन्न करता है।

अनुप्रयोग फ़ाइलों के लिए खोज की जाने वाली निर्देशिका निर्देशिका के लिए विकल्प -I का उपयोग करें ( systools:make_script/2 लिए विकल्प सूची में path बराबर systools:make_script/2 )।

समर्थित विकल्प: -o

.asn1

ASN1 फ़ाइल। यह .asn1db फ़ाइल से .erl , .hrl और .asn1db फ़ाइल .asn1 है। जब तक विकल्प +noobj निर्दिष्ट नहीं किया जाता है, तब तक +noobj Erlang संकलक का उपयोग करके संकलित करें।

समर्थित विकल्प: -I , -o , -b , -W

.idl

आईसी फ़ाइल। यह IDL कंपाइलर चलाता है।

समर्थित विकल्प: -I , -o

पर्यावरण चर

ERLC_EMULATOR
एमुलेटर शुरू करने की कमान। erlc प्रोग्राम के रूप में उसी निर्देशिका में erlc करने के लिए डिफ़ॉल्ट, या, यदि यह मौजूद नहीं है, तो पर्यावरण चर PATH में निर्दिष्ट किसी भी निर्देशिका में erl

यह भी देखें

erl(1) , compile(3) , yecc(3) , snmp(3)