यह ओज़मेक कमांड है जिसे हमारे कई मुफ्त ऑनलाइन वर्कस्टेशन जैसे कि उबंटू ऑनलाइन, फेडोरा ऑनलाइन, विंडोज ऑनलाइन एमुलेटर या मैक ओएस ऑनलाइन एमुलेटर का उपयोग करके ऑनवर्क्स फ्री होस्टिंग प्रदाता में चलाया जा सकता है।
कार्यक्रम:
नाम
ओज़मेक - मेक फ़ॉर ओज़
SYNOPSIS
ozmake --मदद
ozmake [--निर्माण] [लक्ष्य...]
ozmake --इंस्टॉल [लक्ष्य...]
ozmake --इंस्टॉल [--पैकेज=पीकेजी]
ozmake --स्थापना रद्द करें [--पैकेज=पीकेजी]
ozmake --साफ
ozmake --बहुत साफ
ozmake --सर्जन करना [--पैकेज=फ़ाइल]
ozmake --प्रकाशित करें
ozmake --निचोड़ [--पैकेज=पीकेजी]
ozmake --सूची [--पैकेज=मोगुल]
ozmake --config=(डालें|हटाएं|सूची) ...
ozmake --मोगुल=(डालें|हटाएं|सूची|निर्यात करें) ...
वर्णन
ozmake विकल्प लक्ष्य
ozmake मोजार्ट-आधारित परियोजनाओं के निर्माण और मोजार्ट को बनाने और स्थापित करने के लिए एक उपकरण है
संकुल. यह यूनिक्स टूल्स से प्रेरित था बनाना और rpm,लेकिन यह बहुत अधिक सरल है
मोज़ार्ट-आधारित सॉफ़्टवेयर विकास और परिनियोजन और पारदर्शिता के लिए विशेषीकृत
उन सभी प्लेटफार्मों का समर्थन करता है जिन पर मोजार्ट को पोर्ट किया गया है। ozmake वर्तमान में आह्वान किया जाना चाहिए
एक शेल से, लेकिन अंततः यह अतिरिक्त रूप से एक वैकल्पिक, उपयोगकर्ता के अनुकूल प्राप्त कर लेगा
ग्राफिकल इंटरफ़ेस।
विकल्प
निम्नलिखित में, हम कोण कोष्ठक के बीच मेटा वेरिएबल लिखते हैं, उदाहरण के लिए or <URI as
कैश पथ>
सामान्य जानकारी ऑप्शंस
-v --क्रिया
अधिक ट्रेसिंग जानकारी प्रिंट करें जो डिफ़ॉल्ट है। इस विकल्प की आपूर्ति करके
दो बार, आपको कभी-कभी और भी अधिक जानकारी मिलेगी।
-क्यू --शांत
सभी ट्रेसिंग और फीडबैक जानकारी को दबा दें
-एन--जस्ट-प्रिंट
ड्राई रन निष्पादित करें, यानी वास्तव में प्रदर्शन किए बिना जो होगा उसे प्रिंट करें
क्रियाएँ
--स्थानीय
उपनिर्देशिकाओं में पुनरावृत्ति न करें
--(नहीं)स्वत:निर्भर
चूक: <strong>उद्देश्य</strong>
बिल्ड-टाइम और इंस्टॉल-टाइम (रन-टाइम) निर्भरताएं स्वचालित रूप से निर्धारित करें।
वर्तमान में, यह केवल आयात और आवश्यकता को देखते हुए ओज़ स्रोतों के लिए समर्थित है
वर्गों.
--(नहीं)की आवश्यकता है
चूक: <strong>उद्देश्य</strong>
स्वचालित रूप से अन्य पैकेज लाएँ और स्थापित करें जिनकी वर्तमान आवश्यकता है। यह
विकल्प निर्माण और स्थापना दोनों के लिए प्रासंगिक है।
आपको यहां जो याद रखना चाहिए, वह है -वीएन आपका दोस्त है। जोड़ना -वीएन किसी के अंत में
ozmake आह्वान, और यह आपको विस्तार से बताएगा कि आदेश क्या करेगा, इसके बिना
वास्तव में यह कर रहा हूँ।
निर्देशिकाएँ और URLs
--उपसर्ग=
चूक: ~/.oz
निजी स्थापना क्षेत्र की जड़
--दिर=
चूक: वर्तमान निर्देशिका
नीचे अन्य विकल्पों के लिए डिफ़ॉल्ट निर्देशिका
--बिल्डडिर=
चूक:
निर्देशिका जिसमें निर्माण करना है
--srcdir=
चूक:
वह निर्देशिका जहाँ स्रोत फ़ाइलें स्थित हैं
--बिंदिर=
चूक: / bin
निर्देशिका जहां बिन लक्ष्य रखे गए हैं
--libroot=
चूक: / कैश
कैश की मूल निर्देशिका जिसमें lib लक्ष्य स्थापित हैं
--libdir=
चूक: /<URI as कैश पथ>
निर्देशिका जिसमें lib लक्ष्य स्थापित हैं
--डॉकरूट=
चूक: /डॉक
रूट निर्देशिका जिसमें दस्तावेज़ लक्ष्य स्थापित हैं
--डॉकडीर=
चूक: /<MOGUL as फ़ाइल नाम>
निर्देशिका जिसमें दस्तावेज़ लक्ष्य स्थापित हैं
--निकालें =
चूक:
निर्देशिका जिसमें पैकेज निकालना है
--संग्रह=
चूक: http://www.mozart-oz.org/mogul/pkg
मुगल संग्रह का यूआरएल जहां से पैकेज डाउनलोड किए जा सकते हैं
--मोगुलदिर=
निर्देशिका जिसमें उपयोगकर्ता के योगदान के लिए उप-निर्देशिकाएँ रखी गई हैं: a
संकुल के लिए निर्देशिका, दस्तावेज़ीकरण के लिए एक, मुगल डेटाबेस प्रविष्टियों के लिए एक।
--मोगुलुरल=
MOGULDIR निर्देशिका के अनुरूप यूआरएल
फ़ाइलें
-m --मेकफ़ाइल=
चूक: /मेकफाइल.ओज़
मेकफ़ाइल का स्थान
-p --पैकेज=
पैकेज की फ़ाइल या URL. पैकेज बनाते समय, यह एक स्थानीय फ़ाइल नाम होना चाहिए।
निकालते या इंस्टॉल करते समय, यह एक यूआरएल या मुगल आईडी भी हो सकता है; बाद वाले में
मामले में, पैकेज स्वचालित रूप से मोगुल संग्रह से डाउनलोड हो जाता है
-V --पैकेजसंस्करण=
इस विकल्प का सम्मान किया जाता है --निचोड़ और --इंस्टॉल ।कब --निचोड़ दिया हुआ है
एक MOGUL आईडी और MOGUL संग्रह से संबंधित पैकेज डाउनलोड करें, यह होगा
पैकेज के दिए गए संस्करण को सटीक रूप से देखें। --इंस्टॉल बस जांच करेंगे
स्थापित किए जाने वाले पैकेज में वास्तव में यह संस्करण है।
--डेटाबेस=
चूक: /डेटाबेस
स्थापित पैकेज डेटाबेस का आधार पथ। डेटाबेस को अचार और दोनों में सहेजा गया है
DB.ozf और DB.txt फ़ाइलों में क्रमशः पाठ्य प्रारूप
मदद
ozmake --मदद
-एच --सहायता
इस सूचना संदेश को प्रिंट करें
बनाएँ
ozmake [--निर्माण]
सभी लक्ष्य बनाएं
ozmake [--निर्माण] फ़ाइलें...
इन लक्ष्य का निर्माण करें
-बी --निर्माण
यह डिफ़ॉल्ट है. पैकेज के लक्ष्य बनाता है
--ऑप्टलेवल=(कोई नहीं | डीबग | ऑप्टिमाइज़ करें)
चूक: ऑप्टिमाइज़ करें
संकलन के लिए अनुकूलन स्तर का चयन करें
-जी --डीबग --ऑप्टलेवल=डीबग
डिबगिंग के साथ संकलित करें
-O --ऑप्टिमाइज़ --ऑप्टलेवल=अनुकूलन
पूर्ण अनुकूलन के साथ संकलित करें। यह डिफ़ॉल्ट है
--(नहीं)gnu
C++ कंपाइलर GNU कंपाइलर है। यह स्वचालित रूप से निर्धारित होता है और अनुमति देता है
बेहतर अनुकूलन स्तर, अर्थात् उत्तीर्ण होना -ओ३ बल्कि सिर्फ -O को
संकलक
--(नहीं)पूर्ण निर्माण
चूक: असत्य
स्रोत लक्ष्य भी बनाएं
--includedir डीआईआर -I डीआईआर
C++ कंपाइलर को फ़ाइलों को शामिल करने के लिए अतिरिक्त रूप से DIR खोजने के लिए कहें
--(नहीं)sysincludedirs
चूक: <strong>उद्देश्य</strong>
C++ कंपाइलर को अतिरिक्त रूप से खोजने के लिए कहें (या नहीं, यदि उपयोग कर रहे हों)। --nosysincludedirs
)मोजार्ट-विशिष्ट में वैश्विक स्थापना में स्थित निर्देशिकाएँ शामिल हैं
निर्देशिका और उपयोगकर्ता के निजी में ~/.oz क्षेत्र.
--लाइब्रेरीडीआईआर डीआईआर -एल डीआईआर
C++ लिंकर को पुस्तकालयों के लिए अतिरिक्त DIR खोजने के लिए कहें
--(नहीं)syslibrarydirs
चूक: <strong>उद्देश्य</strong>
C++ लिंकर को अतिरिक्त रूप से खोजने के लिए कहें (या नहीं, यदि उपयोग कर रहे हों --nosyslibrarydirs
) वैश्विक संस्थापन में स्थित मोजार्ट-विशिष्ट लाइब्रेरी निर्देशिकाएँ
निर्देशिका और उपयोगकर्ता के निजी में ~/.oz क्षेत्र.
स्थापित करें
ozmake --इंस्टॉल
मेकफ़ाइल का उपयोग करके इंस्टॉल करें
ozmake --इंस्टॉल फ़ाइलें...
मेकफ़ाइल का उपयोग करके इन लक्ष्यों को स्थापित करें
ozmake --इंस्टॉल --पैकेज=पीकेजी
पैकेज स्थापित करे PKG
-मैं--इंस्टॉल करें
पैकेज के लक्ष्य स्थापित करें और पैकेज डेटाबेस को अद्यतन करें
--ग्रेड=(कोई नहीं | वही | ऊपर | नीचे | कोई | ताज़ा)
चूक: कोई नहीं
यदि यह पैकेज पहले से ही स्थापित है तो क्या करें? ozmake संस्करण की तुलना करेगा और
दिनांक, जहां संस्करण अधिक महत्वपूर्ण है। --ग्रेड=कोई नहीं एक त्रुटि का संकेत देता है
--ग्रेड=समान संस्करणों और तिथियों का समान होना आवश्यक है --ग्रेड=ऊपर आवश्यकता है एक
नए संस्करण या समान संस्करण वाला पैकेज और एक से नई रिलीज़ तिथि
installed --ग्रेड=नीचे पुराने संस्करण या उसी संस्करण वाले पैकेज की आवश्यकता है
स्थापित रिलीज़ दिनांक से अधिक पुरानी रिलीज़ दिनांक --ग्रेड=कोई भी कोई शर्त नहीं --ग्रेड=ताज़ा
यदि पैकेज नया है तो इंस्टॉल करें अन्यथा कुछ न करें
-यू-अपग्रेड
के बराबर --इंस्टॉल --ग्रेड=ऊपर
--डाउनग्रेड
के बराबर --इंस्टॉल --ग्रेड=नीचे
-ए-कोई भी ग्रेड
के बराबर --इंस्टॉल --ग्रेड=कोई भी
-एफ--तरोताजा
के बराबर --इंस्टॉल --ग्रेड=ताज़ा
--(नहीं)फ़ाइलें बदलें
चूक: असत्य
अन्य पैकेजों से फ़ाइलों को अधिलेखित करने के लिए इंस्टॉलेशन की अनुमति दें
-आर--बदलें
के बराबर --इंस्टॉल --ग्रेड=कोई भी --फ़ाइलें बदलें
--(नहीं)पैकेज का विस्तार करें
चूक: असत्य
क्या इस पैकेज की वर्तमान स्थापना को बदलना या विस्तारित करना है, यदि कोई हो
-एक्स--विस्तार
के बराबर --इंस्टॉल --ग्रेड=कोई भी --पैकेज का विस्तार करें
--(नहीं) सहेजा गयाब
चूक: <strong>उद्देश्य</strong>
स्थापना के बाद अद्यतन डेटाबेस को सहेजें
--शामिल दस्तावेज़ --बहिष्कृत दस्तावेज़
चूक: --शामिल डॉक्स
दस्तावेज़ लक्ष्य स्थापित करना है या नहीं
--includelibs--excludelibs
चूक: --includelibs
क्या lib लक्ष्यों को स्थापित करना है
--includebins--excludebins
चूक: --includebins
क्या बिन लक्ष्य स्थापित करना है
--(नहीं)ज़ॉम्बी रखो
चूक: असत्य
क्या इस पैकेज की पिछली स्थापना से बची हुई फ़ाइलों को हटाना है
--exe=(डिफ़ॉल्ट | हाँ | नहीं | दोनों | बहु)
चूक: चूक
विंडोज़ पर परंपरा यह है कि निष्पादनयोग्य में .exe होता है, जबकि यूनिक्स पर होता है
कोई विस्तार नहीं. --प्रोग्राम फ़ाइल विकल्प आपको उपयोग किए गए सम्मेलनों को नियंत्रित करने की अनुमति देता है
निष्पादनयोग्य स्थापित करते समय ozmake. --exe=डिफ़ॉल्ट मंच के सम्मेलन का उपयोग करें
--exe=हां .exe एक्सटेंशन का उपयोग करें --exe=नहीं किसी एक्सटेंशन का उपयोग न करें --exe=दोनों सभी स्थापित करें
.exe एक्सटेंशन के साथ और उसके बिना निष्पादनयोग्य --exe=बहु निष्पादन योग्य फ़ंक्टर स्थापित करें
यूनिक्स और विंडोज़ दोनों के लिए। यूनिक्स संस्करण बिना एक्सटेंशन के स्थापित हैं, और
विंडोज़ संस्करण .exe एक्सटेंशन के साथ स्थापित हैं
स्थापना रद्द करें
ozmake --स्थापना रद्द करें
मेकफ़ाइल द्वारा वर्णित पैकेज को अनइंस्टॉल करें
ozmake --स्थापना रद्द करें --पैकेज=पीकेजी
मोगुल आईडी द्वारा नामित पैकेज को अनइंस्टॉल करें PKG
-ई-अनइंस्टॉल करें
किसी पैकेज को अनइंस्टॉल करें
स्वच्छ
ozmake --साफ
ozmake --बहुत साफ
मेकफ़ाइल की साफ़ और बहुत साफ़ सुविधाओं द्वारा निर्दिष्ट फ़ाइलों को हटाएं।
--बहुत साफ का तात्पर्य --साफ .
बनाएं
ozmake --सर्जन करना [--पैकेज=]
एक पैकेज बनाएं और उसे FILE में सेव करें। पैकेज के लिए आवश्यक फ़ाइलें हैं
मेकफ़ाइल से स्वचालित रूप से गणना की जाती है। अगर --पैकेज= आपूर्ति नहीं की जाती है, ए
डिफॉल्ट की गणना इसमें पाए गए मोगुल आईडी (और संभवतः संस्करण संख्या) का उपयोग करके की जाती है
मेकफ़ाइल.
--include(डिब्बे|libs|दस्तावेज़) --बहिष्कृत(डिब्बे|libs|दस्तावेज़)
नियंत्रित करें कि पैकेज में कौन से लक्ष्य प्रकार शामिल हैं
प्रकाशित करना
ozmake --प्रकाशित करें
पैकेज बनाने/अद्यतन करने के लिए आवश्यक सभी चरणों का स्वचालित रूप से ध्यान रखता है
उपयोगकर्ता द्वारा योगदान दिया गया और सभी आवश्यक डेटा मोगुल को उपलब्ध कराया गया
पुस्तकालय अध्यक्ष। इसके लिए दस्तावेज़ देखें --मोगुल नीचे.
उद्धरण
ozmake --निचोड़ --पैकेज=
फ़ाइल या URL PKG से फ़ाइलें निकालें। यदि PKG एक मुगल आईडी है, तो पैकेज है
मुगल संग्रह से स्वचालित रूप से डाउनलोड किया गया
सूची
ozmake --सूची
स्थापित पैकेज डेटाबेस में सभी पैकेजों की सूची जानकारी
ozmake --सूची --पैकेज=
मोगुल आईडी मोगुल द्वारा पहचाने गए स्थापित पैकेज के लिए सूची जानकारी
--लाइनविड्थ=एन
चूक: 70
के साथ एक पंक्ति मान लें N अक्षर
कॉन्फिग
ozmake --कॉन्फ़िगर=डालें
दिए गए विकल्पों को ओज़मेक के कॉन्फ़िगरेशन डेटाबेस में रिकॉर्ड करें, और उनका उपयोग करें
जब तक कि इसे स्पष्ट रूप से ओवरराइड न किया जाए, ओज़मेक के बाद के आह्वान में चूक होती है
कमांड लाइन। उदाहरण के लिए: ozmake --कॉन्फ़िगर=डालें --उपसर्ग=/usr/local/oz बचाता है
/usr/local/oz विकल्प के लिए डिफ़ॉल्ट मान के रूप में उपसर्ग
ozmake --कॉन्फ़िगर=हटाएँ ...
कॉन्फ़िगरेशन डेटाबेस से कुछ प्रविष्टियाँ हटा देता है। उदाहरण के लिए: ozmake
--कॉन्फ़िगर=हटाएँ उपसर्ग के लिए डिफ़ॉल्ट हटा देता है उपसर्ग कॉन्फ़िगरेशन से
डेटाबेस
ozmake --कॉन्फिग=सूची
ओज़मेक के कॉन्फ़िगरेशन डेटाबेस की सामग्री को सूचीबद्ध करता है
करने के लिए तर्क --कॉन्फ़िगरेशन किसी भी गैर-अस्पष्ट उपसर्ग को संक्षिप्त किया जा सकता है
मंगोली
यदि आप MOGUL संग्रह में पैकेज योगदान करना चुनते हैं, ozmake --मोगुल=
आपके कार्य को सरल बनाता है. इससे आपके लिए अपना डेटाबेस बनाए रखना आसान हो जाता है
योगदान और उन्हें निर्यात करना ताकि मुगल लाइब्रेरियन स्वचालित रूप से उन्हें ढूंढ सकें।
वास्तव में, सबसे सरल तरीका उपयोग करना है ozmake --प्रकाशित करें जो सबका ख्याल रखेगा
विवरण आपके लिए.
ozmake --मोगुल=डालना
इसके लिए डेटा के साथ उपयोगकर्ता के स्वयं के मुगल योगदान के डेटाबेस को अपडेट करें
योगदान (स्थानीय निर्देशिका में)
ozmake --मोगुल=डालना --पैकेज=
ऊपर जैसा ही, लेकिन स्पष्ट रूप से दिए गए पैकेज पीकेजी का उपयोग करना
ozmake --मोगुल=हटाओ ...
उपयोगकर्ता के स्वयं के डेटाबेस से MOGn के माध्यम से मुगल आईडी MOG1 वाली प्रविष्टियाँ हटा दें
योगदान
ozmake --मोगुल=हटाओ
वर्तमान योगदान के लिए प्रविष्टि हटाएँ
ozmake --मोगुल=सूची
उपयोगकर्ता के स्वयं के मुगल के डेटाबेस में सभी प्रविष्टियों के लिए रिकॉर्ड किया गया डेटा दिखाएं
योगदान
ozmake --मोगुल=सूची ...
उपयोगकर्ता के स्वयं के डेटाबेस में MOGn के माध्यम से MOG1 प्रविष्टियों के लिए रिकॉर्ड किया गया डेटा दिखाएं
मुग़ल योगदान
ozmake --मोगुल=निर्यात
उपयोगकर्ता के स्वयं के मुगल योगदान के लिए सभी आवश्यक मुगल प्रविष्टियाँ लिखें। ये
प्रविष्टियाँ जिन्हें मुगल लाइब्रेरियन द्वारा स्वचालित रूप से इकट्ठा करने के लिए पढ़ा जाएगा
पूर्ण मोगुल डेटाबेस।
आपके योगदान का डेटा मोगुल लाइब्रेरियन को उपलब्ध कराया जाना चाहिए
वेब. आप बस अपने योगदान के साथ एक स्थानीय निर्देशिका को अद्यतन करना चाहते हैं, लेकिन, इसके लिए
मुगल लाइब्रेरियन को उन्हें ढूंढने के लिए, इन निर्देशिकाओं को यूआरएल के माध्यम से भी उपलब्ध होना चाहिए
जाल। यहां कुछ विकल्प दिए गए हैं जो आपको इस पत्राचार को नियंत्रित करने की अनुमति देते हैं, और इसके लिए
जिसका उपयोग करके आपको डिफ़ॉल्ट सेट करना चाहिए ozmake --कॉन्फ़िगर=डालें
--मोगुलदिर=
--मोगुलुरल=
MOGULDIR एक निर्देशिका है जो URL MOGULURL के माध्यम से वेब पर भी उपलब्ध है।
MOGULDIR एक रूट निर्देशिका के रूप में अभिप्रेत है जिसमें पैकेजों के लिए उप-निर्देशिकाएँ होती हैं,
दस्तावेज़ीकरण, और मुग़ल प्रविष्टियाँ मिलेंगी।
उन लोगों के लिए जो वास्तव में दर्द का आनंद लेते हैं, ozmake निःसंदेह आपके पास खुद को जोखिम में डालने के लिए कई विकल्प हैं
पांव। नीचे दिए गए विकल्पों में पैकेज के मुगल के फ़ाइल नाम संस्करण के लिए खड़ा है
आईडी (मूल रूप से स्लैश को डैश से बदलें)। आप नियंत्रित कर सकते हैं कि पैकेज कहां हैं, उनके
दस्तावेज़ीकरण और मुगल डेटाबेस प्रविष्टियों को संग्रहीत किया गया और विकल्पों का उपयोग करके उपलब्ध कराया गया
नीचे:
--मोगुलपीकेजीडीआईआर=
चूक: /पीकेजी//
--मोगुलपीकेजीयूआरएल=
चूक: /पीकेजी//
--मोगुलडॉकडिर=
चूक: /doc//
--मोगुलडोकर्ल=
चूक: /doc//
--moguldbdir=
चूक: /डीबी//
--मोगुल्डबर्ल=
चूक: /डीबी//
आपके सभी योगदानों में मुगल आईडी होनी चाहिए जो हैं नीचे मुगल आईडी जो आप कहां हैं
मुगल डेटाबेस के आपके अनुभाग के लिए प्रदान किया गया। सुविधा के लिए, ozmake करने का प्रयास करेंगे
जैसे ही आपके डेटाबेस में प्रविष्टियाँ हों, अपने अनुभाग की रूट मुगल आईडी का अनुमान लगाएं
आपका अपना योगदान. हालाँकि, यह बताना ज्यादा बेहतर है ozmake इसके उपयोग के बारे में:
--मोगुलरूटिड=
और इसका उपयोग करके सेट करना है ozmake --कॉन्फ़िगर=डालें --मोगुलरूटिड=
मेकफ़ाइल
मेकफ़ाइल में एक एकल ओज़ रिकॉर्ड होता है जो प्रोजेक्ट का वर्णन करता है और सामान्य रूप से होना चाहिए
नामक फ़ाइल में रखा जाएगा मेकफ़ाइल.oz.एक मेकफ़ाइल आमतौर पर इस तरह दिखती है:
मेकफ़ाइल(
lib : ['Foo.ozf']
यूरी: 'x-ozlib://mylib'
मोगुल : 'मोगुल:/इनकार/lib-foo')
स्पष्ट रूप से बताते हुए कि एक पुस्तकालय लक्ष्य है, अर्थात् फ़ैक्टर Foo.ozf,ओर वो
इसे यूआरआई पर स्थापित किया जाना चाहिए:
x-ozlib://mylib/Foo.ozf
और स्पष्ट रूप से कि इसे ओज़ स्रोत फ़ाइल से संकलित किया जाना चाहिए Foo.oz.जब आप आह्वान करते हैं
ozmake --इंस्टॉल, मुग़ल सुविधा इस पैकेज और फ़ाइलों को विशिष्ट रूप से पहचानने का कार्य करती है
में योगदान देता है ozmake स्थापित पैकेजों का डेटाबेस।
मेकफ़ाइल में कई और सुविधाएं हो सकती हैं और वे सभी वैकल्पिक हैं। अगर
आप सभी सुविधाएँ छोड़ देते हैं, आपको केवल डिफ़ॉल्ट मिलते हैं और आपको मेकफ़ाइल की भी आवश्यकता नहीं होती है।
सभी मान, जैसे फ़ाइलों,वर्चुअल स्ट्रिंग के रूप में दिया जाना चाहिए; परमाणुओं को छोड़कर अनुशंसित हैं
सुविधाओं के लिए विज्ञापन, जानकारी_पाठ और जानकारी_एचटीएमएल,जहां स्ट्रिंग्स की अनुशंसा की जाती है।
मेकफ़ाइल(
बिन : [ फ़ाइलें... ]
lib: [ फ़ाइलें... ]
दस्तावेज़: [ फ़ाइलें... ]
स्रोत: [ फ़ाइलें... ]
निर्भर करता है :
ओ( फ़ाइल : [फ़ाइलें... ]
...
)
नियम :
ओ(फ़ाइल: टूल(फ़ाइल)
...
)
साफ़ : [ ग्लोब... ]
बहुत साफ़ : [ ग्लोब... ]
उरी : उरी
मुग़ल : मुग़ल
लेखक : [ लेखक... ]
जारी तिथि
ब्लर्ब: पाठ
जानकारी_पाठ: पाठ
info_html : पाठ
उपदिर: [ DIRS... ]
आवश्यकता है : [ मुगल... ]
श्रेणियाँ: [ श्रेणी... ]
संस्करण: संस्करण
प्रदान करता है: [ फ़ाइलें... ]
)
सुविधाएँ बिन, लिब और डॉक सूची लक्ष्य जिनमें स्थापित की जानी हैं , और
क्रमशः. बिन लक्ष्य निष्पादन योग्य फ़ैक्टर होने चाहिए, यानी उन्हें समाप्त होना चाहिए
विस्तार ।प्रोग्राम फ़ाइल. lib लक्ष्य आम तौर पर संकलित फ़ैक्टर होते हैं यानी विस्तार के साथ समाप्त होते हैं
.ozf, लेकिन यह मूल फ़ैक्टर भी हो सकता है, यानी एक्सटेंशन के साथ समाप्त हो सकता है .so, या बस डेटा
फाइलें. डॉक्टर लक्ष्य दस्तावेज़ीकरण फ़ाइलें हैं।
एक्सटेंशन
ozmake लक्ष्य के विस्तार को देखकर लक्ष्य बनाना जानता है:
फू.exe
एक निष्पादन योग्य फ़ैक्टर है और इसे इससे बनाया गया है Foo.ozf
Foo.ozf
एक संकलित फ़ैक्टर है और इसे इससे बनाया गया है Foo.oz
फू.ओ
एक संकलित C++ फ़ाइल है और इसे इससे बनाया गया है फू.सीसी
फू.सो
एक मूल फ़ैक्टर है और इससे बनाया गया है फू.ओ
फू.सीसी
एक C++ स्रोत फ़ाइल है
फू.ह.ह
एक C++ हेडर फ़ाइल है
ध्यान दें कि ये हैं सार लक्ष्य. विशेष रूप से, फू.सो वास्तव में फ़ाइल को दर्शाता है
फू.सो- जहां जहां आर्किटेक्चर और ऑपरेटिंग सिस्टम की पहचान करता है
पैकेज बनाया गया है; उदाहरण के लिए: लिनक्स-i486.इसके अलावा, जब एक बिन लक्ष्य फू.exe is
स्थापित, यह दोनों के रूप में स्थापित है /Foo.exe और /फू ताकि यह हो सके
के रूप में आह्वान किया फू विंडोज़ और यूनिक्स दोनों प्लेटफ़ॉर्म पर।
यह जरूरी है कि आप यहां वर्णित एक्सटेंशन के पारंपरिक उपयोग का सम्मान करें:
ozmake कोई भिन्नता की अनुमति नहीं देता है और किसी अन्य एक्सटेंशन का समर्थन नहीं करता है।
नियम
ozmake इसमें फ़ाइलें बनाने के लिए अंतर्निहित नियम हैं। कभी-कभी, आप इसे ओवरराइड करना चाह सकते हैं
एक या अधिक लक्ष्यों के लिए डिफ़ॉल्ट नियम. यह सुविधा के साथ किया जाता है शासन जिसमें एक शामिल है
नियम बनाने के लिए रिकॉर्ड मैपिंग लक्ष्य:
लक्ष्य_फ़ाइल: उपकरण(स्रोत_फ़ाइल)
नियम में विकल्पों की एक सूची भी हो सकती है:
लक्ष्य_फ़ाइल: उपकरण(स्रोत_फ़ाइल विकल्प)
द्वारा समर्थित उपकरण ozmake रहे ozc (ओज़ कंपाइलर), ओज़ल (ऑउंस लिंकर), cc (सी++ कंपाइलर),
ld (सी++ लिंकर)। डिफ़ॉल्ट नियम हैं:
'Foo.exe' : ozl('Foo.ozf' [निष्पादन योग्य])
'Foo.ozf' : ozc('Foo.oz')
'Foo.o' : cc('Foo.cc')
'Foo.so' : ld('Foo.o')
उपकरण निम्नलिखित विकल्पों का समर्थन करते हैं:
ozc
निष्पादन
परिणाम को निष्पादन योग्य बनाएं
'परिभाषित करें'(एस)
मैक्रो को परिभाषित करें S.समान -DS कमांड लाइन पर
ओज़ल
निष्पादन
परिणाम को निष्पादन योग्य बनाएं
cc
शामिल करें (डीआईआर)
सामान्य C++ कंपाइलर विकल्प के समान -आईडीआईआर. डीआईआर एक आभासी स्ट्रिंग है
'परिभाषित करें' (मैक)
सामान्य C++ कंपाइलर विकल्प के समान -डीएमएसी. मैक एक आभासी स्ट्रिंग है
ld
पुस्तकालय(डीआईआर)
सामान्य C++ लिंकर विकल्प के समान -एलडीआईआर. डीआईआर एक आभासी स्ट्रिंग है
आप प्री-लिंक्ड लाइब्रेरी बनाने के लिए एक नियम निर्दिष्ट करना चाह सकते हैं:
'Utils.ozf' : ozl('Foo.ozf')
या एक गैर-प्रीलिंक्ड निष्पादन योग्य बनाने के लिए:
'Foo.exe' : ozc('Foo.oz' [निष्पादन योग्य])
निर्भरता
ozmake स्वचालित रूप से निर्धारित करता है कि लक्ष्यों को फिर से बनाने की आवश्यकता है या नहीं, उदाहरण के लिए क्योंकि वे
गायब हैं या यदि उन्हें बनाने के लिए आवश्यक कुछ स्रोत फ़ाइल को संशोधित किया गया है। नियम हैं
फ़ाइलों के बीच निर्भरता निर्धारित करने के लिए उपयोग किया जाता है। कभी-कभी यह अपर्याप्त होता है, उदाहरण के लिए क्योंकि
आप टूल का उपयोग करें ओज़ल (आयात पर निर्भरता), या डालने के किसी Oz फ़ाइल में, या #C++ में शामिल करें
फ़ाइल। इस मामले में आप फीचर का उपयोग करके अतिरिक्त निर्भरताएँ निर्दिष्ट कर सकते हैं निर्भर करता है जो है
निर्भरताओं की सूची के लिए एक रिकॉर्ड मैपिंग लक्ष्य:
लक्ष्य : [ फ़ाइलें... ]
उदाहरण के लिए:
'Foo.o' : ['Foo.hh' 'Baz.hh' ]
or
'Foo.exe' : ['Lib1.ozf' 'Lib2.ozf' ]
सफाई
विकास के दौरान, सभी कबाड़ को आसानी से हटाने में सक्षम होना अक्सर सुविधाजनक होता है
एक स्वच्छ परियोजना निर्देशिका को फिर से प्राप्त करने के लिए संकलित फ़ाइलें। इसका समर्थन किया जाता है ozmake
--साफ और ozmake --बहुत साफ;उत्तरार्द्ध का तात्पर्य पूर्व से भी है। हटाई जाने वाली फ़ाइलें हैं
इसके द्वारा निर्दिष्ट ग्लोब पैटर्न कहाँ ? किसी एक अक्षर से मेल खाता है और * 0 के अनुक्रम से मेल खाता है
या अधिक वर्ण. BUILDDIR में ऐसे पैटर्न से मेल खाने वाली सभी फ़ाइलें हटा दी जाती हैं। वहाँ हैं
अंतर्निहित पैटर्न, लेकिन आप उन्हें सुविधाओं के साथ ओवरराइड कर सकते हैं स्वच्छ और बहुत साफ कौन कौन से
ग्लोब पैटर्न की सूची होनी चाहिए। उदाहरण के लिए डिफ़ॉल्ट क्लीन ग्लोब पैटर्न हैं:
साफ़ : [ "*~" "*.ozf" "*.o" "*.so-*" "*.exe" ]
पैकेज सम्बंधित विशेषताएं
उड़ी
सुविधा उड़ी यूआरआई को इंगित करता है कि लिब लक्ष्य कहां स्थापित करना है। उदाहरण के लिए:
यूरी: 'x-ozlib://mylib/XML'
यह सब बताता है lib लक्ष्य (उदा Foo.ozf)इस यूआरआई के तहत स्थापित किया जाएगा ताकि वे
इससे आयात भी किया जा सकता है, अर्थात:
MyFoo को 'x-ozlib://mylib/XML/Foo.ozf' पर आयात करें
मुग़ल
सुविधा मुग़ल मुगल आईडी विशिष्ट रूप से इस पैकेज की पहचान कर रही है। इसका उपयोग पहचान करने के लिए किया जाता है
स्थापित पैकेजों के डेटाबेस में पैकेज, पैकेज बनाने/प्रकाशित करने के लिए, और
इसकी दस्तावेज़ीकरण फ़ाइलें स्थापित करें।
लेखक
सुविधा लेखक एक वर्चुअल स्ट्रिंग या वर्चुअल स्ट्रिंग सम्मान की सूची है। लेखक की पहचान
या पैकेज के लेखक। लेखकों की पहचान उनकी मुगल आईडी से करने की अनुशंसा की जाती है,
हालाँकि, केवल उनके नाम देना भी संभव है। उदाहरण के लिए, अनुशंसित तरीका
है:
लेखक: 'मोगुल:/डुचियर'
लेकिन निम्नलिखित भी संभव है:
लेखक: 'डेनिस डचियर'
रिहा
सुविधा रिहा एक वर्चुअल स्ट्रिंग है जो रिलीज़ की तारीख और समय निर्दिष्ट करती है
निम्नलिखित प्रारूप:
रिलीज़: "YYYY-MM-DD-HH:MM:SS"
समय वैकल्पिक है. वर्तमान दिनांक और समय का उपयोग करते हुए एक उपयुक्त रिलीज़ दिनांक है
आह्वान करते समय स्वचालित रूप से डाला जाता है ozmake --सर्जन करना or ozmake --प्रकाशित करें..
विज्ञापन
सुविधा विज्ञापन इसमें पैकेज का वर्णन करने वाला पाठ का एक बहुत छोटा टुकड़ा शामिल है। यह पाठ चाहिए
केवल एक पंक्ति हो और पैकेज प्रकाशित होने पर इसे शीर्षक के रूप में उपयोग करने का इरादा हो
मुग़ल पुरालेख.
जानकारी_पाठ
सुविधा जानकारी_पाठ इसमें पैकेज का सादा पाठ विवरण शामिल है। यही इरादा है
मुगल संग्रह में पैकेज के लिए प्रस्तुति पृष्ठ पर एक सार के रूप में उपयोग किया जाता है। यह
संक्षिप्त और जानकारीपूर्ण होना चाहिए, लेकिन पैकेज का दस्तावेजीकरण करने का प्रयास नहीं करना चाहिए।
जानकारी_एचटीएमएल
सुविधा जानकारी_एचटीएमएल के समान है जानकारी_पाठ लेकिन इसमें सादे पाठ के बजाय HTML शामिल है।
"
सुविधा " इंगित करता है कि किन लक्ष्यों को स्रोत माना जाना चाहिए, अर्थात् विशेष रूप से गैर-
निर्माण योग्य. में उल्लिखित सभी लक्ष्य " में उल्लेख किया जाना चाहिए बिन, lib, या डॉक्टर भी।
की बात " पूर्व-निर्मित लक्ष्यों के साथ और बिना दिए पैकेज वितरित करने में सहायता करना है
संबंधित स्रोतों को बाहर निकालें। आपको देशी फ़ैक्टर्स के साथ ऐसा नहीं करना चाहिए क्योंकि वे हैं
प्लेटफ़ॉर्म पर निर्भर और पोर्टेबल नहीं, लेकिन यह पूर्व वितरण का एक सुविधाजनक साधन हो सकता है-
ओज़ पुस्तकालयों का निर्माण किया। उदाहरण के लिए:
मेकफ़ाइल(
lib : ['Foo.ozf' ]
src : ['Foo.ozf' ]
यूरी: 'x-ozlib://mylib'
मोगुल: 'मोगुल:/मायनेम/फ़ूलिब')
एक पैकेज के लिए मेकफ़ाइल है जो पूर्व-संकलित वितरित करता है Foo.ozf, लेकिन ऐसा भी नहीं है
इसके स्रोत को वितरित करें Foo.oz.आम तौर पर, जब आप कोई पैकेज बनाते हैं तो यह बस यह जांचता है कि
" फ़ाइलें मौजूद हैं लेकिन उन्हें बनाने का प्रयास नहीं किया जाएगा। यदि आपके पास स्रोत हैं, तो आप कर सकते हैं
बल निर्माण " यदि आवश्यक हो तो लक्ष्य का उपयोग करें --पूर्ण निर्माण..
उपनिर्देशिका
सुविधा उपनिर्देशिका परियोजना की उपनिर्देशिकाओं का प्रतिनिधित्व करने वाले नंगे फ़ाइल नामों की एक सूची है। द्वारा
डिफ़ॉल्ट, जब आवश्यक हो, ozmake इन उपनिर्देशिकाओं में पुनरावृत्ति होगी। इसकी उम्मीद थी
कि प्रत्येक उपनिर्देशिका को अपनी स्वयं की मेकफ़ाइल प्रदान करनी चाहिए। मुग़ल आईडी स्वचालित रूप से है
उपनिर्देशिकाओं को विरासत में मिला है और यूआरआई का नाम जोड़कर स्वचालित रूप से विस्तारित किया गया है
उपनिर्देशिका: इस प्रकार उप-मेकफ़ाइलें सरल हो सकती हैं क्योंकि उन्हें चिंतित होने की आवश्यकता नहीं है
पैकेज-स्तरीय सुविधाओं के साथ।
की आवश्यकता होती है
सुविधा की आवश्यकता होती है मॉड्यूल यूआरआई या पैकेज मोगुल आईडी की एक सूची है। ये प्रतिनिधित्व करते हैं
बाहरी पैकेज की निर्भरता. उनका अभी तक उपयोग नहीं किया गया है, लेकिन अंततः ozmake होगा
द्वारा आवश्यक अन्य पैकेजों की पुनरावर्ती स्थापना को स्वचालित करने के लिए उनका उपयोग करने में सक्षम
जिसमें आपकी रुचि हो.
श्रेणियाँ
सुविधा श्रेणियाँ इस पैकेज को वर्गीकृत करने में सहायता के लिए MOGUL श्रेणियों की एक सूची है
मुग़ल पुरालेख.
संस्करण
सुविधा संस्करण संस्करण स्ट्रिंग प्रदान करने के लिए उपयोग किया जाता है। यह एक स्ट्रिंग है जिसमें शामिल है
पूर्णांकों को एकल बिंदुओं द्वारा अलग किया जाता है, उदाहरण के लिए "2" or "3.1.7"..
प्रदान करता है
सुविधा प्रदान करता है पैकेज के बारे में डिफ़ॉल्ट जानकारी को ओवरराइड करने के लिए उपयोग किया जाता है
प्रदान करता है, सामान्यतः स्वचालित रूप से गणना की जाती है बिन और lib लक्ष्य: यह होना चाहिए
सूची जिसमें इन लक्ष्यों का एक उपसमूह शामिल है। प्रदान करता है मेकफ़ाइल की सुविधा नहीं है
इसके उप-मेकफ़ाइल को ओवरराइड करें या अन्यथा प्रभावित करें: प्रत्येक मेकफ़ाइल को अलग से ओवरराइड करना चाहिए
अगर इसकी इच्छा हो तो. यह बताने के लिए कि मेकफ़ाइल आधिकारिक तौर पर कोई फ़ैक्टर या प्रदान नहीं करता है
निष्पादन योग्य एप्लिकेशन, आप जोड़ेंगे:
प्रदान करता है: शून्य
आपको उपयोग करना चाहिए प्रदान करता है सुविधा जब आपके पैकेज में आधिकारिक सार्वजनिक दोनों शामिल हों
फ़ैक्टर्स के साथ-साथ पूरी तरह कार्यान्वयनात्मक फ़ैक्टर्स जो आधिकारिक का हिस्सा नहीं हैं
सार्वजनिक इंटरफ़ेस और इसका उल्लेख नहीं किया जाना चाहिए बशर्ते पैकेज द्वारा.
संपर्क
लेखकों को वास्तव में मुगल आईडी द्वारा संदर्भित किया जाना चाहिए जो वर्णन करने वाली मुगल प्रविष्टियों को दर्शाता है
उन्हें। इसे आसान बनाने के लिए, ए मेकफ़ाइल.oz इसमें एक भी शामिल हो सकता है संपर्क करें सुविधा जो
या तो किसी व्यक्ति का वर्णन करने वाला एक रिकॉर्ड है, या ऐसे रिकॉर्ड की एक सूची है।
आपके पास नहीं होना चाहिए संपर्क करें प्रत्येक मेकफ़ाइल में सुविधा। बल्कि, संपर्क करें विशेषता है
आमतौर पर मेकफ़ाइल्स के लिए अभिप्रेत है जिनमें केवल एक होता है संपर्क करें विशेषता, अर्थात् जिसका एकमात्र उद्देश्य
संबंधित व्यक्तियों के लिए मुगल प्रविष्टियाँ बनाना है। यहाँ इस तरह का एक उदाहरण है
मेकफ़ाइल:
मेकफ़ाइल(
संपर्क करें :
o(
मुग़ल : 'मुग़ल:/डुचियर/इनकार'
नाम: 'डेनिस डचियर'
ईमेल : '[ईमेल संरक्षित]'
www : 'http://www.ps.uni-sb.de/~duchier/'))
आप आह्वान कर सकते हैं ozmake --प्रकाशित करें ऐसे मेकफ़ाइल पर संबंधित मुगल का योगदान करने के लिए
डेटाबेस प्रविष्टियाँ
onworks.net सेवाओं का उपयोग करके ozmake ऑनलाइन का उपयोग करें