यहाँ एक Cygports स्रोत फ़ाइल की सामग्री है:
आप एक Cygwin पैकेज स्रोत फ़ाइल के रूप में यह सोचने के लिए बेहतर कर चाहते हैं।
cygport
सिगविन बाइनरी और स्रोत पैकेज के निर्माण को स्वचालित करने के लिए बस एक उपकरण है। यह प्राथमिक उपकरण उपलब्ध है, लेकिन कुछ अन्य पैकेजिंग सिस्टम के विपरीत, वास्तव में इसका उपयोग करने के लिए आपको मजबूर करने के लिए कुछ भी नहीं है। साइगविन पैकेज को पूरी तरह से हाथ से बनाना संभव है, क्योंकि यह वास्तव में एक टैरबॉल से अधिक कुछ नहीं है कि सिगविन के setup.exe
सिग्विन रूट निर्देशिका (आमतौर पर c:\cygwin
) में अंधाधुंध रूप से अनपैक कर सकते हैं, उम्मीद है कि यह पैकेज की फ़ाइलों को समझदार स्थानों में रखेगा ।
cygport
से पहले, लोगों ने अपना खुद का विज्ञापन पैकेजिंग सिस्टम बनाया था। कई सिग्विन पैकेज रखरखाव अभी भी इन उपकरणों का उपयोग करते हैं। (आपका सचमुच शामिल है; मेरे तीन पैकेजों में से दो cygport
का उपयोग करते हैं, लेकिन तीसरा अभी भी एक कस्टम बिल्ड सिस्टम का उपयोग करता है।)
आखिरकार, आपमें cygport
मैन्युअल पढ़ना चाहते हैं।
(हाँ, मुझे पता है, "आरटीएफएम" उत्तर यहां पर फंसे हुए हैं।लेकिन, एक है जो वर्तमान में सरकारी Cygwin पैकेज भंडार में दो cygport
आधारित संकुल का कहना है के रूप में, कृपया मुझे विश्वास है कि जब मैं आपको बता दूँ कि मैनुअल अभी भी एक बेहतरीन संसाधन इस विषय पर उपलब्ध है।)
कैसे करता है। cygport फ़ाइल मुझे ./configure में उचित विकल्प चलाने में मदद करती है?
आप अन्य संसाधनों के माध्यम से पता चला के रूप में, आप पहली बार .cygport
फ़ाइल में CYGCONF_ARGS
मूल्य संपादित करने की आवश्यकता होगी।
उसके बाद सबसे आसान संभव कदम cygport gedit-3.4.2-1.cygport all
है। वह सभी बाइनरी पैकेजों को एक ही चरण में पुनर्निर्माण करने का प्रयास करता है। यह एक नया स्रोत पैकेज भी बनाता है जिसमें अद्यतन .cygport
और पैच फ़ाइलें शामिल हैं।
यदि all
निर्माण प्रक्रिया में कुछ तोड़ता है, तो आमतौर पर प्रक्रिया को पुनरारंभ करने के बजाय all
द्वारा निहित उप-आदेशों का उपयोग करने के लिए स्विच करना अधिक तेज़ होता है। all
चरण केवल prep
, compile
, install
, package
, और finish
आपके लिए, उस क्रम में चलता है। उदाहरण के लिए, यदि all
संकलन चरण के दौरान विफल रहता है, तो prep
चरण को दोहराने की कोई आवश्यकता नहीं है।
(यह निर्माण पेड़ बर्बाद करने के लिए, फिर से रन prep
के लिए मजबूर cygport
या एक समझदार निर्माण प्रणाली के लिए असाधारण असामान्य है। सुदूर अधिक सामान्यतः, आप करने की जरूरत के अंत से पूर्ववत कर prep
जब आप मैन्युअल मलबे पहली बार निर्माण करने के लिए एक नया पैकेज प्राप्त करने की कोशिश करते समय पेड़ बनाएं और शुरू करने की आवश्यकता है।)
उदाहरण के लिए, जीएडिट में अगर मैं निर्दिष्ट नहीं करता - डिस्प्ले-स्पेल यह आगे नहीं बढ़ेगा त्रुटि के लिए
आप शायद ठीक कर सकते हैं कि setup.exe
के साथ आधिकारिक Cygwin पैकेज रिपोजिटरी से libaspell-devel
पैकेज की स्थापना के द्वारा।
व्यक्तिगत रूप से, मैं किसी भी सुविधा को अक्षम नहीं करता जब तक कि यह Cygwin Ports प्रोजेक्ट से अनौपचारिक पैकेज स्थापित करने का मतलब नहीं था। [*] सिग्विन पोर्ट्स रिपोजिटरी होना अच्छा लगता है, लेकिन क्योंकि इसमें बहुत से पैकेज हैं, एक इंस्टॉल करना "दुनिया को स्थापित करें" स्थिति बना सकते हैं: पैकेज ए संकुल बी, सी और डी पर निर्भर करता है, और सी ई, एफ, जी, एच, और जी पर निर्भर करता है I, J, K, और ... निर्भरता पर निर्भर करता है साइगविन पैकेज रेपो के भीतर पदानुक्रम साइग्सपोर्ट रेपो में उन लोगों की तुलना में चापलूसी और संकुचित होते हैं।
क्या कोई तरीका है कि हम साइगपोर्ट बनाने के लिए साइगपोर्ट निष्पादन योग्य का उपयोग कर सकते हैं और उपसर्ग भी बदल सकते हैं?
आप अनुमान लगाया है कि आप बस CYGCONF_ARGS
को --prefix=/my/private/program/tree
जोड़ने के लिए, मुझे विश्वास।
[*] के बारे में आप "Cygwin बंदरगाहों" और cygport
उलझन महसूस कर रहे हैं, नामकरण समानता कोई संयोग नहीं है। cygport
साइकोविन पोर्ट्स पैकेज रिपोजिटरी बनाते समय याकोव सेल्कोविट्ज़ द्वारा बनाई गई एक उपकरण है। बाद में, यह अन्य सिग्विन पैकेज रखरखावकर्ताओं के बीच काफी लोकप्रिय हो गया, जिसने इसे प्रतिस्पर्धी निर्माण प्रणालियों में से अधिकांश को धक्का दिया।
वास्तव में बहुत अच्छा जवाब।इसे पहले से 5 बार इस्तेमाल किया जाता है। –