मेकअप स्थिर लिंक्डइन बाइनरी विकल्प
इस दस्तावेज़ का उद्देश्य एक लाइब्रेरी लिखें हम addNumbers लाइब्रेरी के लिए एक सरल कोड लिखते हैं जो कि दो पूर्णांक को संग्रहीत और जोड़ सकते हैं। यह इंटरफ़ेस और स्रोत फ़ाइलों दोनों से बना है। एक स्थिर लाइब्रेरी बनाएं पहले स्रोत स्रोत srcAddNumbers. cpp एक ऑब्जेक्ट फ़ाइल में बदल गया है। एक स्थैतिक लाइब्रेरी मूल रूप से ऑब्जेक्ट फाइलों का एक सेट है जिसे एक फ़ाइल में कॉपी किया गया था। यह आर्चिव एआर को लागू करने के लिए बनाया गया है लाइब्रेरी का नाम तीन अक्षर लिब से शुरू होना चाहिए और प्रत्यय होना चाहिए। ए आप एक मेसेफाइल में समान नियम भी लिख सकते हैं। AddNumbers. tar. bz2 संग्रह में दिए गए फ़ाइल Makefile. static देखें। एक साझा लाइब्रेरी बनाएं- - fpic विकल्प जी को स्वतंत्र स्वतंत्र कोड बनाने के लिए कहता है जो साझा लाइब्रेरीज़ के लिए आवश्यक है। अंत में साझा लाइब्रेरी बनाई जाती है। ध्यान दें कि लाइब्रेरी का नाम तीन अक्षर लिब से शुरू होना चाहिए और इसका प्रत्यय होना चाहिए। एक मेसेफाइल उदाहरण के रूप में फ़ाइल मेकफाइल देखें। AddNumbers. tar. bz2 संग्रह में दिए गए हैं। सी प्रतीकों कमांड एनएम और cfilt ऑब्जेक्ट फ़ाइलों से सी प्रतीकों की सूची और गड़बड़ी की अनुमति देते हैं। हम उन आज्ञाओं को स्थिर लाइब्रेरी libAddNumbers. a के साथ आज़माते हैं। इसका अर्थ है पुस्तकालय libAddNumbers. a को AddNumbers. o ऑब्जेक्ट फ़ाइल में बनाया गया है जिसमें कुछ प्रतीकों को शामिल किया गया है। पहला स्तंभ प्रतीक का मान है (यह पुस्तकालय में प्रतीक की स्थिति दर्शाता है) दूसरा कॉलम प्रतीक प्रकार है। और तीसरा स्तंभ प्रतीक नाम है। निम्न सामान्य तालिका प्रकारों का वर्णन करने वाली निम्न तालिका देखें। प्रतीक एक कमजोर प्रतीक है जिसे विशेष रूप से एक कमजोर वस्तु प्रतीक के रूप में टैग नहीं किया गया है। जब एक कमजोर परिभाषित प्रतीक एक सामान्य परिभाषित प्रतीक से जुड़ा होता है, तो सामान्य परिभाषित प्रतीक का उपयोग किसी त्रुटि के साथ नहीं किया जाता है। जब एक कमजोर अपरिभाषित प्रतीक लिंक होता है और प्रतीक को परिभाषित नहीं किया जाता है, तो प्रतीक का मान किसी सिस्टम-विशिष्ट तरीके से त्रुटि के बिना निर्धारित होता है। अपरकेस इंगित करता है कि एक डिफ़ॉल्ट मान निर्दिष्ट किया गया है। प्रतीक का प्रकार अज्ञात है। या ऑब्जेक्ट फ़ाइल स्वरूप विशिष्ट। अधिक जानकारी के लिए एनएम मैनुअल देखें। प्रतीक मानवीय सुगम नहीं हैं। यह तथ्य सी भाषा के साथ होता है जो कार्य ओवरलोडिंग प्रदान करता है, जिसका अर्थ है कि आप एक ही नाम के साथ कई कार्य (प्रत्येक प्रकार के विभिन्न प्रकार के पैरामीटर ले सकते हैं) लिख सकते हैं। सभी सी फंक्शन नामों को कम-स्तरीय असेंबली लेबल में एन्कोड किया जाता है (इस प्रक्रिया को मँगलिंग के रूप में जाना जाता है)। Cfilt प्रोग्राम व्युत्क्रम मैपिंग करता है: यह उपयोगकर्ता स्तर के नामों में कम-स्तरीय नामों को डीकोड करता है। प्रोग्राम एनएम सीधे- C विकल्प का उपयोग करके प्रतीकों को मिटाने की अनुमति देता है पुस्तकालयों का उपयोग करना यह खंड बताता है कि कार्यक्रमों में स्थिर या साझा लाइब्रेरी कैसे उपयोग करें। पहले हमें एक मुख्य कार्यक्रम बनाने की आवश्यकता है इस प्रोग्राम को स्थिर लाइब्रेरी के खिलाफ लिंक करने के लिए, निम्न कमांड लिखें, जो मुख्य निष्पादन योग्य संकलन और लिंक करता है। ध्यान दें कि पहले तीन अक्षर लिब और साथ ही प्रत्यय। A लायब्रेरी के नाम के लिए निर्दिष्ट नहीं हैं। अब कार्यक्रम AddNumbersClientstatic निष्पादित किया जा सकता है। साझा लाइब्रेरी से लिंक करने के लिए, निम्न कमांड दर्ज करें पहले तीन अक्षर लिब और साथ ही प्रत्यय। इसलिए पुस्तकालय के नाम के लिए निर्दिष्ट नहीं हैं। प्रोग्राम को चलाने के लिए AddNumbersClients साझा करने के लिए आपको एलडीएलआईबीआरआईआरएआरपीआरएचएच एनवायरमेंट वेरिएबल को बताने की ज़रूरत है जहां साझा लाइब्रेरी मिली। वास्तविक दुनिया में यह एलडीएलआईआरबीआरआरएआरपीएटीएच के लिए एक पूर्ण पथ का उपयोग करना बेहतर है। Makefile उदाहरण के रूप में Makefile. static और Makefile. shared फ़ाइलें AddNumbersClient. tar. bz2 संग्रह में दिए गए हैं। साझा लाइब्रेरीज़ की सूची कमांड लड्ड प्रत्येक प्रोग्राम द्वारा आवश्यक साझा लाइब्रेरी प्रिंट करता है या कमांड लाइन पर निर्दिष्ट साझा लाइब्रेरी। एआर के उपयोगी विकल्प जीएनयू एआर कार्यक्रम अभिलेखागार से बना, संशोधित और अर्क बनाता है। एक संग्रह एक एकल फाइल है जिसमें एक संरचना में अन्य फाइलों का संग्रह होता है जो मूल व्यक्तिगत फ़ाइलों को पुनर्प्राप्त करना संभव बनाता है (जिसे संग्रह के सदस्य कहते हैं)। मूल फाइलसंयंत्र, मोड (अनुमतियाँ), टाइमस्टैम्प, स्वामी, और समूह संग्रह में संरक्षित होते हैं, और निष्कर्षण पर पुनर्स्थापित किया जा सकता है। उपयोगी लिंक के उपयोगी विकल्पमैं एक आवेदन स्थापित किया है उदा। fdisk लेकिन यह निष्पादन के लिए आवश्यक पुस्तकालयों। मैं यूटिलिटी टूल की तलाश कर रहा हूं जो मुझे पहले से ही स्थापित बायनेरिज़ से एक स्थिर बाइनरी बनाने में मदद करेगा। ताकि मैं इसे कहीं भी उपयोग कर सकूं। केवल विश्वसनीय उपकरण जो मुझे मिले हैं, यहाँ से इर्मिनलाईट हैं I लेकिन यह एक शेयर-बर्तन है क्या कोई ओपन सोर्स सॉफ़्टवेयर एक ही संपादन के लिए उपलब्ध है fdisk सिर्फ एक उदाहरण है। मैं एलएफएस पर ज्यादातर समय काम करता हूं, इसलिए यदि मुझे किसी भी उपयोगिता का उपयोग करना है, तो मुझे चरणों का पालन करने की आवश्यकता है ताकि बस समय से बचें, मैं एक समाधान की तलाश कर रहा हूं जिसमें मैं डेबियन से एक स्थिर बाइनरी बनाऊँगा या fedora से या अन्य distrbution से, यह एलएफएस पर प्रयास करें, और अगर यह ठीक काम करता है या मेरी आवश्यकता के अनुसार, मैं संकलन के लिए स्रोत कोड के साथ जाना होगा। 2 मई 11 को 18:38 से पूछा यह एक बहुत बुरा विचार की तरह दिखता है लेकिन, इसकी संभव है जैसे कि फाउंडेशन ओपन सोर्स है, बस अपने स्रोत को पकड़ो, और मेकफाइल को देखो आपको एक ऐसा विकल्प दिखाना चाहिए जो संकलन में जीसीसी के लिए स्थिर होगा। मैं एक सीसी गुरु नहीं हूं, लेकिन जहां तक मुझे पता है कि एक मौजूदा गतिशील रूप से जुड़े बाइनरी से एक स्थैतिक रूप से जुड़े बाइनरी बनाना संभव नहीं है। यदि आप इसे कहीं भी उपयोग करना चाहते हैं, तो आईडी एक छोटे रखरखाव वितरण का उपयोग करने की सिफारिश करता है जो सेकंड के भीतर शुरू होता है और आपको सभी को संशोधित करने देता है यह मेरे लिए अधिक समझदार बनाता है क्योंकि आप संभवत: आपके LinuxUNIX स्थापना को चलाने वाली डिस्क को संशोधित करना चाहते हैं। लिंक मेरे लिए काम करता है पेज में टाइपोसग्रॅममैटिकलडिक्टोरियल त्रुटियों की संख्या होती है जो कि आप किसी पेशेवर प्रोग्रामर के काम से अपेक्षा कर सकते हैं, आप किसी पेशेवर वेबसाइट से अपेक्षा करते हैं, फ़िशिंग ईमेल से आपके उम्मीद की तुलना में कम है। उपरोक्त पोस्ट के समान ही, इसके बारे में सोचना है। यह संदेहास्पद है कि इस ब्रांड के नए उपयोगकर्ता स्टैक्स एक्सचेंज में सिर्फ एक समय में एक ब्रांड के नए वेब साइट के लिए एक लिंक पोस्ट करने के लिए शामिल होंगे। ndash G-Man Aug 27 15 को 22: 58 कॉन्फ़िगर करें - स्रोत ट्री को कॉन्फ़िगर करें कॉन्फ़िगर स्क्रिप्ट आपके विशेष प्लेटफ़ॉर्म पर अपाचे HTTP सर्वर को संकलित और स्थापित करने के लिए स्रोत ट्री कॉन्फ़िगर करता है। विभिन्न विकल्प आपके व्यक्तिगत आवश्यकताओं के अनुरूप सर्वर के संकलन की अनुमति देते हैं। यह स्क्रिप्ट स्रोत वितरण में मूल निर्देशिका में शामिल है, यूनिक्स और यूनिक्स जैसी सिस्टमों पर संकलन के लिए है। अन्य प्लेटफार्मों के लिए, प्लेटफ़ॉर्म दस्तावेज़ देखें। आपको विन्यास स्क्रिप्ट को वितरण के रूट डायरेक्टरी में से कॉल करना चाहिए। कॉन्फ़िगर विकल्प VAR VALUE पर्यावरण चर को निर्दिष्ट करने के लिए (जैसे सीसी। CFLAGS।), उन्हें VAR VALUE के रूप में निर्दिष्ट करें। कुछ उपयोगी चर के विवरण के लिए नीचे देखें निम्नलिखित विकल्प स्वयं को कॉन्फ़िगर करने के व्यवहार को प्रभावित करते हैं - C --config-cache यह एक उपनाम है - - cache-fileconfig. cache --cache-file FILE परीक्षण के परिणाम फाइल FILE में कैश किए जाएंगे। डिफाल्ट रूप में यह विकल्प निष्क्रिय है। - h --help shortrecursive आउटपुट मदद और बाहर निकलें तर्क के साथ ही इस पैकेज के लिए केवल कम विशिष्ट विकल्प प्रदर्शित होंगे। तर्क पुनरावर्ती सभी शामिल पैकेजों की छोटी मदद दिखाता है। - n --no-create कॉन्फ़िगर स्क्रिप्ट सामान्य रूप से चलाया जाता है लेकिन आउटपुट फाइल नहीं बनायी जाती है। संकलन के लिए मेकफाइल बनाने से पहले परीक्षण के परिणामों की जांच करना उपयोगी है। - q --क्िटीट प्रिंटिंग न करें कॉन्फ़िगर प्रक्रिया के दौरान संदेश --srcdir DIR निर्देशिका फ़ाइल परिभाषित करने के लिए डीआईआर परिभाषित करता है। डिफ़ॉल्ट निर्देशिका है जहां कॉन्फ़िगर स्थित है, या मूल निर्देशिका। - सिइलेंट - विच्छेद-वी-विवरण के समान कॉपीराइट जानकारी प्रदर्शित करें और बाहर निकलें ये विकल्प अधिष्ठापन निर्देशिका को परिभाषित करते हैं। स्थापना के पेड़ चयनित लेआउट पर निर्भर करता है। - प्रीफिक्स PREFIX PREFIX में आर्किटेक्चर-स्वतंत्र फाइलें स्थापित करें डिफ़ॉल्ट रूप से स्थापना निर्देशिका usrlocalapache2 पर सेट है --exec-prefix EPREFIX EPREFIX में आर्किटेक्चर-आधारित फाइलों को स्थापित करें। डिफ़ॉल्ट रूप से स्थापना निर्देशिका को PREFIX निर्देशिका में सेट किया गया है। डिफ़ॉल्ट रूप से, इंस्टॉल करें, सभी फाइलों को यूएसआरलोकालापैका 2 बीन में इंस्टॉल कर देगा। usrlocalapache2lib आदि। --prefix का उपयोग करते हुए आप usrlocalapache2 के अतिरिक्त एक अधिष्ठापन उपसर्ग निर्दिष्ट कर सकते हैं। उदाहरण के लिए - प्रीफ़िक्स एचओएमई लेआउट पर आधारित इंस्टॉलेशन ट्री को मानने के लिए लेआउट - स्रोत-लेआउट लेआउट स्रोत कोड को कॉन्फ़िगर करें और लिपियों का निर्माण करें। यह आपको अपाचे एचटीटीपी सर्वर अधिष्ठापन के भीतर प्रत्येक प्रकार की फाइल के लिए अलग-अलग स्थान निर्दिष्ट करने की अनुमति देता है। Config. layout फ़ाइल में कई उदाहरण विन्यास हैं, और आप उदाहरणों के बाद भी अपने खुद के कस्टम कॉन्फ़िगरेशन बना सकते हैं। इस फाइल के विभिन्न लेआउट्स को लेफ्टलाइन फागट में बांटा गया है। लेफ्टआउट ग्रेट अनुभाग और फ़ू में नाम से संदर्भित डिफ़ॉल्ट लेआउट अपाचे है स्थापना निर्देशिका के बेहतर नियंत्रण के लिए, नीचे दिए गए विकल्पों का उपयोग करें। कृपया ध्यान दें कि निर्देशिका डिफ़ॉल्ट autoconf द्वारा निर्धारित की जाती है और संबंधित लेआउट सेटिंग द्वारा ओवरराइट किया जाता है। --बिंदिर डीआईआर डीआईआर में उपयोगकर्ता एक्जीक्यूटेबल स्थापित करें उपयोगकर्ता निष्पादनयोग्य एचटीसीपीडडी जैसे कार्यक्रमों का समर्थन कर रहे हैं। dbmmanage। आदि जो साइट प्रशासकों के लिए उपयोगी हैं। डिफ़ॉल्ट रूप से डीआईआर को ईपीआरईआईआईएक्सएक्स बिन पर सेट किया जाता है। --datadir DIR डीआईआर में केवल-पढ़ने के लिए केवल वास्तुकला-स्वतंत्र डेटा स्थापित करें। डिफ़ॉल्ट रूप से डीटीडीआरआई PREFIX शेयर पर सेट है। यह विकल्प autoconf और वर्तमान में अप्रयुक्त द्वारा प्रस्तुत किया जाता है। --includedir डीआईआर में सी हेडर फाइलें स्थापित करें। डिफ़ॉल्ट रूप से शामिल EPREFIX में शामिल है। --इनफोडिर डीआईआर डीआईआर में जानकारी दस्तावेज स्थापित करें। डिफ़ॉल्ट रूप से infodir PREFIX जानकारी पर सेट है यह विकल्प वर्तमान में अप्रयुक्त है --लिब्दीर डीआईआर डीआईआर में ऑब्जेक्ट कोड लाइब्रेरी स्थापित करें। डिफ़ॉल्ट रूप से libdir को EPREFIX lib पर सेट किया गया है - libexecdir DIR डीआईआर में कार्यक्रम निष्पादनयोग्य (यानी साझा किए गए मॉड्यूल) को स्थापित करें। डिफ़ॉल्ट रूप से libexecdir को EPREFIX मॉड्यूल पर सेट किया गया है। --लोकलस्टेटीर डीआईआर डीआईआर में संशोधित एकल-मशीन डेटा स्थापित करें। डिफ़ॉल्ट स्थानीय स्थिति में PREFIX var पर सेट है यह विकल्प autoconf और वर्तमान में अप्रयुक्त द्वारा प्रस्तुत किया जाता है। - मंदिर डीआईआर डीआईआर में मैन दस्तावेज को स्थापित करें। डिफ़ॉल्ट मंदिर द्वारा EPREFIX आदमी पर सेट है --oldincludedir डीआईआर में गैर - जीसीसी के लिए सी हेडर फाइलें स्थापित करें। डिफ़ॉल्ट रूप से शामिल किए जाने वाले पुराने शामिलकर्ता को शामिल करने के लिए सेट किया गया है। यह विकल्प autoconf और वर्तमान में अप्रयुक्त द्वारा प्रस्तुत किया जाता है। --एसबीआईडीआईआईआर डीआईआर में सिस्टम व्यवस्थापक एक्जिक्यूटर्स को स्थापित करें। वे सर्वर प्रोग्राम जैसे httpd हैं apachectl। suexec। आदि। जो अपाचे HTTP सर्वर को चलाने के लिए आवश्यक हैं डिफ़ॉल्ट रूप से sbindir को EPREFIX sbin पर सेट किया गया है। --sharedstatedir डीआईआर डीआईआर में स्थापित करने योग्य वास्तुकला-स्वतंत्र डेटा स्थापित करें। डिफ़ॉल्ट रूप से sharestatedir PREFIX com पर सेट है। यह विकल्प autoconf और वर्तमान में अप्रयुक्त द्वारा प्रस्तुत किया जाता है। --sysconfdir DIR केवल पढ़ने के लिए एकल-मशीन डेटा जैसे सर्वर विन्यास फाइल httpd. conf को स्थापित करें। mime. types। डीआईआर में आदि डिफ़ॉल्ट रूप से sysconfdir को PREFIX conf पर सेट किया गया है ये विकल्प अन्य सिस्टम पर चलाने के लिए अपाचे HTTP सर्वर को क्रॉस-कंपाइल करने के लिए उपयोग किया जाता है। सामान्य मामलों में, जब एक ही सिस्टम पर सर्वर का निर्माण और चलाना, इन विकल्पों का उपयोग नहीं किया जाता है। --बिल्ड बिल्ड सिस्टम के सिस्टम प्रकार को परिभाषित करता है जिस पर उपकरण बना रहे हैं। यह स्क्रिप्ट config. guess के परिणाम के लिए डिफ़ॉल्ट है - HOST HOST सिस्टम के सिस्टम प्रकार को परिभाषित करता है जिस पर सर्वर चल जाएगा। HOST डिफ़ॉल्ट रूप से बिल्ड के लिए - लक्ष्य लक्ष्य सिस्टम प्रकार के लिए कम्पाइलर बनाने के लिए कॉन्फ़िगर करें TARGET यह HOST के लिए डिफ़ॉल्ट है यह विकल्प autoconf द्वारा दिया जाता है और अपाचे HTTP सर्वर के लिए आवश्यक नहीं है। ये विकल्प आपके एचटीटीपी सर्वर के पास होने वाले सुविधाओं को ठीक करने के लिए उपयोग किए जाते हैं। आम तौर पर आप एक सुविधा को सक्षम या अक्षम करने के लिए निम्न सिंटैक्स का उपयोग कर सकते हैं: - अक्षम - फ़ीचर FEATURE शामिल न करें। यह वही है जैसा कि - सक्षम-फीचर नंबर --सक्षम - फीचर एआरजी फीचर शामिल करें। एआरजी के लिए डिफ़ॉल्ट मान हां है। --नएबल-मॉड्यूल साझा किया है इसी मॉड्यूल को डीएसओ मॉड्यूल के रूप में बनाया जाएगा। डिफ़ॉल्ट रूप से सक्षम मॉड्यूल गतिशील रूप से जोड़ा जाता है --सक्षम - मॉड्यूल स्थिर, इसी मॉड्यूल को स्थायी रूप से लिंक किया जाएगा। कॉन्फिगरेशन के बारे में शिकायत नहीं करेगा --अन्य - foo भले ही foo मौजूद न हो, तो आपको ध्यान से लिखना होगा अधिकांश मॉड्यूल डिफ़ॉल्ट रूप से संकलित होते हैं और उन्हें स्पष्ट रूप से अक्षम किया जाता है या कुछ खोजशब्दों का उपयोग करके (आगे की व्याख्या के लिए - सक्षम - mods-shared और --enable-mods-static नीचे देखें) या - सक्षम - एक समूह के रूप में हटाए जाने वाले मॉड्यूलनोन अन्य मॉड्यूल डिफ़ॉल्ट रूप से संकलित नहीं होते हैं और इन्हें स्पष्ट रूप से सक्षम किया जाना है या सभी उपलब्ध कीवर्ड को या वास्तव में उपलब्ध कराना है। यह पता लगाने के लिए कि डिफ़ॉल्ट रूप से कौन से मॉड्यूल संकलित किए जाते हैं,.configure - h या.configure --help चलाएं और वैकल्पिक सुविधाओं के तहत देखें। मान लीजिए आप मोड xample1 और modexample2 में रुचि रखते हैं। और आप यह देखते हैं: तब मोड xample1 डिफ़ॉल्ट रूप से सक्षम है, और आप इसे संकलित नहीं करने के लिए --disable-example1 का उपयोग करेंगे। modexample2 डिफ़ॉल्ट रूप से अक्षम है, और आप इसे संकलित करने के लिए --enable-example2 का उपयोग करेंगे। मल्टी प्रसंस्करण मॉड्यूल या एमपीएम, सर्वर के मूल व्यवहार को लागू करें सर्वर को कार्य करने के लिए एकल एमपीएम सक्रिय होना चाहिए उपलब्ध एमपीएम की सूची मॉड्यूल इंडेक्स पेज पर दिखाई देती है। एमपीएम को डीएसओ के रूप में बनाया जा सकता है जो गतिशील लोड हो रहा है या सर्वर के साथ स्थिर रूप से जुड़े हैं, और निम्न विकल्पों का उपयोग कर सक्षम हैं: अपने सर्वर के लिए डिफ़ॉल्ट एमपीएम चुनें अगर एमपीएम को डीएसओ मॉड्यूल के रूप में बनाया गया है (देखें - सक्षम-एमपीएमएस-साझा देखें), यह निर्देश MPM का चयन करता है जो कि डिफ़ॉल्ट कॉन्फ़िगरेशन फ़ाइल में लोड किया जाएगा। अन्यथा, यह निर्देश केवल उपलब्ध एमपीएम का चयन करता है, जिसे सर्वर में स्थिर रूप से लिंक किया जाएगा। यदि यह विकल्प छोड़ा जाता है, तो आपके ऑपरेटिंग सिस्टम के लिए डिफ़ॉल्ट एमपीएम का उपयोग किया जाएगा। गतिशील साझा मॉड्यूल के रूप में एमपीएम की एक सूची सक्षम करें लोड मॉड्यूल डायरेक्टिव के उपयोग से इन मॉड्यूल में से एक गतिशील रूप से लोड किया जाना चाहिए। एमपीएम-लिस्ट एक स्पेस सेपरेटेड लिस्टेड एमपीएम नेशन्स है जो उद्धरण चिह्नों से घिरा है। उदाहरण के लिए: इसके अतिरिक्त आप सभी विशेष कीवर्ड का उपयोग कर सकते हैं। जो सभी एमपीएम का चयन करेंगे जो मौजूदा प्लेटफॉर्म पर गतिशील लोडिंग का समर्थन करते हैं और उन्हें डीएसओ मॉड्यूल के रूप में बनाते हैं। उदाहरण के लिए: अतिरिक्त तृतीय-पक्ष मॉड्यूल जोड़ने के लिए निम्न विकल्प का उपयोग करें: --with-module मॉड्यूल-प्रकार मॉड्यूल-फाइल, मॉड्यूल-प्रकार मॉड्यूल-फाइल स्टैटिकली से जुड़े मॉड्यूल की सूची में एक या अधिक तृतीय-पक्ष मॉड्यूल जोड़ें। मॉड्यूल स्रोत फ़ाइल मॉड्यूल-फाइल आपके अपाचे HTTP सर्वर स्रोत ट्री के मॉड्यूल-मॉड्यूल-प्रकार उपनिर्देशिका में खोजी जाएगी। यदि ऐसा नहीं मिला है तो कॉन्फ़िगर मॉड्यूल फ़ाइल को पूर्ण फ़ाइल पथ मानता है और स्रोत फ़ाइल की प्रतिलिपि मॉड्यूल-प्रकार सबडिरेक्टरी में करने की कोशिश करता है। यदि उपनिर्देशिका मौजूद नहीं है तो यह एक मानक Makefile. in के साथ बनाया जाएगा और आबाद होगा। यह विकल्प एक स्रोत फ़ाइल से युक्त छोटे बाहरी मॉड्यूल जोड़ने के लिए उपयोगी है। अधिक जटिल मॉड्यूल के लिए आपको विक्रेताओं के दस्तावेज़ पढ़ना चाहिए। यदि आप एक statically linked use apxs के बजाय एक DSO मॉड्यूल बनाना चाहते हैं --सक्षम-नियंत्रक-मोड डिबगिंग चालू करें और समय की चेतावनी संकलित करें और सभी संकलित मॉड्यूल लोड करें। --enable-mods - साझा मॉड्यूल-सूची सक्षम होने के लिए मॉड्यूल की एक सूची परिभाषित करता है और डायनेमिक साझा मॉड्यूल के रूप में निर्माण करता है। इसका मतलब है, लोड मॉड्यूल डायरेक्टिव का उपयोग करके इन मॉड्यूल को गतिशील रूप से लोड करना होगा। मॉड्यूल-लिस्ट उद्धरण चिह्नों से संलग्न मॉड्यूलनम्स की एक स्थान से अलग सूची है। मॉड्यूल नाम पूर्ववर्ती mod के बिना दिए जाते हैं। उदाहरण के लिए: --enable-mods-sharedheaders dav को फिर से लिखना इसके अलावा आप वास्तव में विशेष कीवर्ड का उपयोग कर सकते हैं सब। सबसे अधिक और कुछ उदाहरण के लिए, अधिकांश मॉड्यूल संकलित करेगा और उन्हें डीएसओ मॉड्यूल के रूप में बनाया जाएगा, केवल मॉड्यूल का एक बहुत ही बुनियादी समूह संकलित करेगा। डिफ़ॉल्ट सेट सबसे अधिक है चुना मॉड्यूल के लिए लोड मॉड्यूल निर्देश मुख्य विन्यास फ़ाइल में स्वतः उत्पन्न हो जाएंगे। डिफ़ॉल्ट रूप से, उन सभी निर्देशों को उन मॉडलों को छोड़कर टिप्पणी की जाएगी, जो कि कॉन्फ़िगर --एनेबल - foo तर्क द्वारा आवश्यक या स्पष्ट रूप से चुने गए हैं आप httpd. conf में LoadModule डायरेक्टिव को सक्रिय या निष्क्रिय करके लोड किए गए मॉड्यूल का सेट बदल सकते हैं। इसके अतिरिक्त, सभी निर्मित मॉड्यूल के लिए लोड मॉड्यूल निर्देश को कॉन्फ़िगर विकल्प - सक्षम-लोड-सभी-मॉड्यूल के जरिए सक्रिय किया जा सकता है। --enable-mods-static module-LIST यह विकल्प --enable-mods - साझा के समान व्यवहार करता है लेकिन दिए गए मॉड्यूल को स्थिर रूप से लिंक करेगा इसका मतलब है, httpd चलते समय ये मॉड्यूल हमेशा मौजूद रहेंगे उन्हें LoadModule से लोड किए जाने की आवश्यकता नहीं है। --enable-modules मॉड्यूल-सूची यह विकल्प --enable-mods - साझा की तरह व्यवहार करता है और गतिशील रूप से दिए गए मॉड्यूल को भी लिंक करेगा। विशेष कीवर्ड कोई भी सभी मॉड्यूल का निर्माण अक्षम करता है --enable-v4-mapped आईपीवी 6 सॉकेट्स आईपीवी 4 कनेक्शन को नियंत्रित करने की अनुमति दें। --with-port PORT यह पोर्ट को परिभाषित करता है जिस पर httpd सुनेगा। यह पोर्ट नंबर प्रयोग किया जाता है जब विन्यास फाइल httpd. conf उत्पन्न करता है डिफ़ॉल्ट 80 है। - प्रोग्राम-नाम के साथ एक वैकल्पिक निष्पादन योग्य नाम निर्धारित करें। डिफ़ॉल्ट httpd है ये विकल्प वैकल्पिक पैकेज को परिभाषित करने के लिए उपयोग किया जाता है आम तौर पर आप एक वैकल्पिक पैकेज को परिभाषित करने के लिए निम्न सिंटैक्स का उपयोग कर सकते हैं: --with - पैकेज ARG पैकेज पैकेज का उपयोग करें। एआरजी के लिए डिफ़ॉल्ट मान हां है। बिना पैकेज पैकेज का उपयोग न करें। यह उसी के साथ-साथ - पैकेज नं। यह विकल्प autoconf द्वारा प्रदान किया गया है लेकिन अपाचे HTTP सर्वर के लिए बहुत उपयोगी नहीं है। --with-apr DIR FILE अपाचे पोर्टेबल रनटाइम (एपीआर) httpd स्रोत वितरण का हिस्सा है और स्वचालित रूप से एचटीटीपी सर्वर के साथ मिलकर बनाया जाएगा। यदि आप पहले से इंस्टॉल किए गए एपीआर का उपयोग करना चाहते हैं तो आपको एपीआर-कॉन्फ़िग स्क्रिप्ट के पथ को कॉन्फ़िगर करना है। आप स्थापित पथ के लिए पूर्ण पथ और नाम या निर्देशिका सेट कर सकते हैं। apr-config इस निर्देशिका या उपनिर्देशिका बिन के भीतर मौजूद होना चाहिए। --with-apr-util DIR FILE अपाचे पोर्टेबल रनटाइम यूटिलिटीज़ (एपीयू) httpd स्रोत वितरण का हिस्सा हैं और स्वचालित रूप से एचटीटीपी सर्वर के साथ मिलकर निर्माण की जाएगी। अगर आप पहले से इंस्टॉल किए गए एपीयू का उपयोग करना चाहते हैं, तो आपको एपीयू-कॉन्फ़िग स्क्रिप्ट के पथ को कॉन्फ़िगर करना है। आप पूर्ण पथ और नाम या निर्देशिका को स्थापित एपीयू में सेट कर सकते हैं apu-config इस निर्देशिका या उपनिर्देशिका बिन के भीतर मौजूद होना चाहिए। - with - ssl DIR यदि modssl सक्षम किया गया है एक स्थापित OpenSSL के लिए खोजों को कॉन्फ़िगर करें आप इसके बजाय SSLTLS टूलकिट में निर्देशिका पथ सेट कर सकते हैं। --with-z DIR एक स्थापित zlib लाइब्रेरी के लिए स्वचालित रूप से खोजों को कॉन्फ़िगर करता है यदि आपके स्रोत कॉन्फ़िगरेशन को एक की आवश्यकता होती है (जैसे कि जब moddeflate सक्षम है)। आप इसके बजाय संपीड़न लाइब्रेरी में निर्देशिका पथ सेट कर सकते हैं। अपाच एचटीटीपी सर्वर की कई विशेषताएं, माड्यूथंडबीएम और मॉडर्राइट एस डीबीएम रेव्राइटमैट सहित, जानकारी की त्वरित जानकारी के लिए सरल कुंजीवल्यू डेटाबेस का उपयोग करते हैं। एसडीबीएम को एपीयू में शामिल किया गया है, इसलिए यह डाटाबेस हमेशा उपलब्ध है। यदि आप अन्य डेटाबेस प्रकारों का उपयोग करना चाहते हैं, तो उन्हें सक्षम करने के लिए निम्नलिखित विकल्प का उपयोग करें: --with-gdbm पथ यदि कोई पथ निर्दिष्ट नहीं किया गया है, कॉन्फ़िगर सामान्य खोज पथ में एक जीएनयू डीबीएम स्थापना की फाइलों और पुस्तकालयों की खोज करेगा। एक स्पष्ट पथ मार्ग लिब में देखने के लिए कॉन्फ़िगर करेगा और पथ प्रासंगिक फाइलों के लिए शामिल होगा। अंत में, पथ विशिष्ट समावेश और बृहदान्त्र द्वारा अलग पुस्तकालय पथ निर्दिष्ट कर सकता है। --with-एनडीबीएम पथ की तरह-with-gdbm लेकिन नई डीबीएम स्थापना की खोज करता है। --with-berkeley-db पथ की तरह-with-gdbm लेकिन एक बर्कले डीबी स्थापना के लिए खोज करता है डीबीएम विकल्प एपीयू द्वारा प्रदान किए जाते हैं और इसके विन्यास स्क्रिप्ट के माध्यम से पारित किया जाता है। --with-apr-util द्वारा परिभाषित पहले से स्थापित एपीयू का उपयोग करते समय वे बेकार हैं आप अपने एचटीटीपी सर्वर के साथ एक बार फिर डीबीएम कार्यान्वयन का उपयोग कर सकते हैं। विनियोजित डीबीएम प्रकार प्रत्येक समय में रनटाइम कॉन्फ़िगरेशन के भीतर कॉन्फ़िगर किया जाएगा। --enable-static-support समर्थन बायनेरिज़ के एक स्थिर रूप से जुड़े संस्करण का निर्माण करें। इसका मतलब है, एक अकेले निष्पादन योग्य सभी आवश्यक पुस्तकालयों के साथ एकीकृत किया जाएगा। अन्यथा समर्थन बायनेरिज़ को गतिशील रूप से डिफ़ॉल्ट रूप से जोड़ा जाता है। --enable-suexec suexec सक्षम करने के लिए इस विकल्प का प्रयोग करें जो आपको यूआईडी और ग्रिड प्रक्रियाओं के लिए जीआईडी सेट करने की अनुमति देता है। इस विकल्प का उपयोग न करें जब तक कि आप अपने सर्वर पर सूद बाइनरी चलाने के सभी सुरक्षा प्रभाव को समझ न दें। Suexec को कॉन्फ़िगर करने के लिए आगे के विकल्प नीचे वर्णित हैं। निम्न विकल्पों का उपयोग करके एक एकल समर्थन कार्यक्रम के स्थैतिक रूप से जुड़े बाइनरी बनाना संभव है: --enable-static-ab अब के एक स्थिर रूप से जुड़े संस्करण का निर्माण करें --enable-static-checkgid चेकजीड के एक स्थिर रूप से जुड़े संस्करण का निर्माण करें। --enable-static-htdbm htdbm का एक स्थिर रूप से जुड़े संस्करण बनाएँ --enable-static-htdigest htdigest के एक स्थिर रूप से जुड़े संस्करण का निर्माण करें। --enable-static-htpasswd htpasswd का एक स्थिर रूप से जुड़े संस्करण बनाएँ। --enable-static-logresolve logresolve के स्थैतिक रूप से जुड़े संस्करण का निर्माण करें --नैबल-स्टैटिक-रोटेटलॉग्स रोटेटेलोग्स के एक स्थिर रूप से जुड़े संस्करण का निर्माण Suexec के व्यवहार को ठीक करने के लिए निम्नलिखित विकल्प का उपयोग किया जाता है आगे की जानकारी के लिए सूज़ेक को कॉन्फ़िगर और स्थापित करना देखें। --with-suexec-bin यह suexec बाइनरी के पथ को परिभाषित करता है। डिफ़ॉल्ट है - सिबिइंडर (स्थापना निर्देशिकाओं का ठीक ट्यूनिंग देखें)। --with-suexec-caller यह उपयोगकर्ता को suexec पर कॉल करने की अनुमति देता है। यह उस उपयोगकर्ता के समान होना चाहिए जिसके तहत httpd सामान्य रूप से चलाता है। --with-suexec-docroot यह डायरेक्ट्री ट्री परिभाषित करता है जिसके तहत suexec एक्सेस एक्जीक्यूटेबल के लिए अनुमति है। डिफ़ॉल्ट वैल्यू है - डिटैडरहोल्ट। - with-suexec-gidmin यह परिभाषित करें कि निम्नतम जीआईडी को suexec के लिए एक लक्षित उपयोगकर्ता होने की अनुमति दी गई है। डिफ़ॉल्ट मान 100 है। --with-suexec-logfile यह suexec logfile के फ़ाइल नाम को परिभाषित करता है डिफ़ॉल्ट रूप से लॉगफाइल का नाम suexeclog रखा गया है और --logfiledir में स्थित है। - with-suexec-safepath suexec द्वारा शुरू की गई प्रक्रियाओं के लिए पर्यावरण चर PATH के मान को परिभाषित करें डिफ़ॉल्ट मूल्य यूसरिलोकलबीन है: usrbin: bin --with-suexec-userdir यह उपनिर्देशिका को उपयोगकर्ता निर्देशिका के अंतर्गत परिभाषित करता है जिसमें सभी निष्पादनयोग्य होते हैं जिसके लिए suexec प्रवेश की अनुमति है। यह सेटिंग जरूरी है जब आप उपयोगकर्ता-विशिष्ट निर्देशिकाओं के साथ suexec का उपयोग करना चाहते हैं (moduserdir द्वारा प्रदान किए गए अनुसार) डिफ़ॉल्ट publichtml है --with-suexec-uidmin यह निश्चित करें कि निम्नतम यूआईडी को suexec के लिए एक लक्ष्य उपयोगकर्ता होने की अनुमति दी गई है। डिफ़ॉल्ट मान 100 है। - suexec-umask suexec द्वारा शुरू की गई प्रक्रियाओं के लिए umask सेट करें। यह आपके सिस्टम सेटिंग्स के लिए डिफ़ॉल्ट है कॉन्फ़िगर द्वारा किए गए विकल्पों को ओवरराइड करने के लिए या गैर-मानक नामों या स्थानों के साथ पुस्तकालयों और कार्यक्रमों को खोजने में मदद करने के लिए कुछ उपयोगी परिवेश चर हैं। सी संकलन के लिए इस्तेमाल होने वाली सी कंपाइलर कमांड को परिभाषित करें। सीएफएलजी सेट सी संकलक झंडे जिन्हें आप संकलन के लिए उपयोग करना चाहते हैं। सीपीपी उपयोग करने के लिए सी प्रीप्रोसेसर कमांड को परिभाषित करें सीपीपीएफएएलएजीएस सीसी प्रीप्रोसेसर फ्लैग सेट करें, उदा। - मैं शामिल है अगर आपके पास एक गैर-मानक निर्देशिका शामिलर में हेडर हैं एलडीएफएएलजीएस सेट लिंकर फ्लैग, उदा। - एल libdir अगर आपके पास एक गैर-मानक निर्देशिका libdir में लाइब्रेरी है। सूचना: यह एक कम्पा एक्शन नहीं है यहां दी गई टिप्पणियां दस्तावेज़ीकरण या सर्वर को सुधारने के सुझावों की ओर इशारा करनी चाहिए, और हमारे मॉडरेटर द्वारा फिर से हटाए जा सकते हैं यदि उन्हें या तो लागू किया गया है या अमान्य-विषय विषय माना जाता है। अपाचे एचटीटीपी सर्वर को कैसे प्रबंधित करें पर सवाल हमारे आईआरसी चैनल, httpd, फ़िरनोड पर या हमारे मेलिंग सूचियों को भेजे जाने पर निर्देशित किए जाने चाहिए। कॉपीराइट 2017 अपाचे सॉफ्टवेयर फाउंडेशन अपाचे लाइसेंस, संस्करण 2.0 के तहत लाइसेंस। विंडोज़ के लिए क्लिंटन क्यूटी - तैनाती यह दस्तावेज़ीकरण विंडोज के लिए तैनाती प्रक्रिया का वर्णन करता है। हम परिनियोजन प्रक्रिया का प्रदर्शन करने के लिए दस्तावेज़ के माध्यम से प्लग amp पेंट उदाहरण एप्लिकेशन का संदर्भ लें Windows परिनियोजन उपकरण विंडोज परिनियोजन उपकरण को उस फ़ोल्डर से आवेदन चलाने के लिए आवश्यक क्यूटी-सहबद्ध निर्भरता (पुस्तकालय, क्यूएमएम आयात, प्लग-इन और अनुवाद) युक्त एक तैनाती फ़ोल्डर बनाने की प्रक्रिया को स्वचालित करने के लिए डिज़ाइन किया गया है। यह Windows रनटाइम या Windows डेस्कटॉप अनुप्रयोगों के लिए एक इंस्टॉलेशन ट्री के लिए एक सैंडबॉक्स बनाता है, जिसे आसानी से एक इंस्टॉलेशन पैकेज में बंडल किया जा सकता है। उपकरण QTDIRbinwindeployqt में पाया जा सकता है यह एक. exe फ़ाइल या एक निर्देशिका है जिसमें एक. exe फ़ाइल को एक तर्क के रूप में रखा जाता है, और निर्भरता के लिए निष्पादन योग्य स्कैन करता है। यदि एक निर्देशिका --qmldir तर्क के साथ पारित किया गया है, तो क्यूएमएल आयात निर्भरता के लिए निर्देशिका के अंदर QML फ़ाइलों को स्कैन करने के लिए windeployqt qmlimportscanner उपकरण का उपयोग करता है। पहचान की गई निर्भरताएं तब निष्पादनयोग्य निर्देशिका में कॉपी की जाती हैं। Qt5Core. dll में हार्डकोड किए गए स्थानीय पथ इसके अलावा रिश्तेदार लोगों के साथ प्रतिस्थापित किए जाते हैं। Windows डेस्कटॉप अनुप्रयोगों के लिए, कंपाइलर के लिए आवश्यक रनटाइम फ़ाइलें भी डिप्लेबल फ़ोल्डर में प्रतिलिपि बनाई जाती हैं (जब तक कि विकल्प --no-compiler-runtime निर्दिष्ट नहीं किया जाता है)। रिहाई के मामले में माइक्रोसॉफ्ट विज़ुअल सी का उपयोग कर बनाता है, इन में विजुअल सी रीडायर्टेब्टेरेबरेबल पैकेज शामिल हैं, जो लक्ष्य मशीन पर एप्लिकेशन इंस्टॉलर द्वारा रिकर्सिव इंस्टॉलेशन के लिए लक्षित हैं। अन्यथा, कंपाइलर रनटाइम की साझा लाइब्रेरी उपयोग की जाती है। एप्लिकेशन को अतिरिक्त तृतीय-पक्ष पुस्तकालयों (उदाहरण के लिए, डेटाबेस लाइब्रेरीज़) की आवश्यकता हो सकती है, जो कि विंडेक्वार्क द्वारा ध्यान में नहीं लिया गया है। उपकरण में अतिरिक्त तर्कों का वर्णन किया गया है आउटपुट में मदद: स्थैतिक लिंक स्थिर अनुप्रयोग बनाने के लिए, Qt को स्थिर रूप से निर्मित करें - किसी के साथ कॉन्फ़िगर करें: अगर आपको बाद में फिर से कॉन्फ़िगर करने और उसी स्थान से क्यूटी को फिर से बनाने की आवश्यकता है, तो सुनिश्चित करें कि पिछले कॉन्फ़िगरेशन के सभी निशान हैं बिल्ड निर्देशिका में प्रवेश करके और फिर से कॉन्फ़िगर करने से पहले डिस्टक्लेन या मिंगव 32-डिस्प्लेन चलाने के द्वारा निकाल दिया गया। अनुप्रयोग को क्यूटी के स्टेटिक संस्करण से लिंक करना एक उदाहरण के रूप में, यह खंड प्लैंक एम्प पेंट उदाहरण को स्थिर रूप से बनाएगा। एक बार क्यूटी का निर्माण खत्म होने पर, प्लग एम्प पेंट एप्लीकेशन बनाएं पहले हमें उस डायरेक्टरी में जाना चाहिए जिसमें अनुप्रयोग शामिल है: एप्लिकेशन के लिए एक नया मेकअप बनाने के लिए क्यूमेक चलाएं, और स्थिर रूप से जुड़े निष्पादन योग्य बनाने के लिए एक स्वच्छ बिल्ड करें: आप शायद रिलीज़ पुस्तकालयों के साथ लिंक करना चाहते हैं, और आप इसे निर्दिष्ट कर सकते हैं जब क्वैमक का इस्तेमाल किया अब, बशर्ते कि बिना किसी त्रुटि के सब कुछ संकलित और लिंक किया गया, हमारे पास एक प्लगइन्ड। फ़ाइल होना चाहिए जो तैनाती के लिए तैयार है। यह जांचने के लिए कि अनुप्रयोग में आवश्यक लाइब्रेरी है, निष्पादन योग्य को उस मशीन पर प्रतिलिपि बनाएँ जिसके पास क्यूटी या कोई क्यूटी अनुप्रयोग स्थापित नहीं है, और उस मशीन पर चलाएं। याद रखें कि यदि आपका एप्लिकेशन कंपाइलर विशिष्ट पुस्तकालयों पर निर्भर करता है, तो ये भी आपके आवेदन के साथ पुनर्वितरित किया जाना चाहिए। आप यह निर्धारित कर सकते हैं कि निर्भर करता है टूल का उपयोग करके आप कौन-सी लाइब्रेरीज़ आपके ऐप के साथ लिंक कर रहे हैं। अधिक जानकारी के लिए, अनुप्रयोग निर्भरता अनुभाग पढ़ें। चूंकि हम स्थिर लिंकिंग दृष्टिकोण का उपयोग करके प्लगइन्स को परिनियोजित नहीं कर सकते, इसलिए हमने जो आवेदन किया है वह अपूर्ण है। यह चलाएगा, लेकिन लापता प्लगइन्स के कारण कार्यक्षमता को अक्षम कर दिया जाएगा। प्लग-इन-आधारित एप्लिकेशन को परिनियोजित करने के लिए हमें साझा लाइब्रेरी दृष्टिकोण का उपयोग करना चाहिए। साझा लाइब्रेरीज़ साझा लाइब्रेरी दृष्टिकोण के उपयोग से प्लग एंड पीयंट एप्लिकेशन की तैनाती करते समय हमारे पास दो चुनौतियां हैं: क्यूटी रनटाइम को एप्लिकेशन निष्पादन योग्य के साथ सही ढंग से पुनर्वितरित किया जाना चाहिए, और प्लगइन्स को लक्ष्य प्रणाली पर सही स्थान पर स्थापित करना होगा ताकि आवेदन उन्हें पा सकते हैं। बिल्डिंग क्यूटी को साझा लाइब्रेरी के रूप में इस उदाहरण के लिए, हम मानते हैं कि क्यूटी को एक साझा लाइब्रेरी के रूप में स्थापित किया गया है, जो कि क्यूटी इंस्टॉल करते समय सी है: pathtoQt डायरेक्टरी में। क्यूटी को एक साझा लाइब्रेरी के रूप में लिंक करना यह सुनिश्चित करने के बाद कि क्यूटी को साझा लाइब्रेरी के रूप में बनाया गया है, हम प्लग एप पेंट एप्लिकेशन को बना सकते हैं। सबसे पहले, हमें उस डायरेक्टरी में जाना चाहिए जिसमें अनुप्रयोग शामिल है: अब आवेदन के लिए एक नया मेकफाइल बनाने के लिए क्यूमेक चलाएं, और डायनेमिक रूप से लिंक किए जाने योग्य निष्पादन योग्य बनाने के लिए एक स्वच्छ बिल्ड करें: यह मुख्य अनुप्रयोग बनाता है, निम्नलिखित प्लगइन्स को बनाएगा: यदि सब कुछ संकलित और बिना किसी गलती से जुड़ा हुआ है, तो हम एक प्लगएन्डपेंट. एक्सई निष्पादन योग्य और pnpbasictools. dll और pnpextrafilters. dll प्लगइन फ़ाइलें प्राप्त करेंगे। एप्लिकेशन पैकेज को बनाने के लिए, हमें यह सुनिश्चित करना होगा कि हम प्रासंगिक क्यूटी डीएलएल (आवेदन में उपयोग किए जाने वाले क्यूटी मॉड्यूल के अनुरूप) और विंडोज प्लेटफॉर्म प्लगइन, qwindows. dll की नकल करें। साथ ही रिलीज उपनिर्देशिका में उसी डायरेक्टरी ट्री के निष्पादन योग्य। उपयोगकर्ता प्लगइन्स के विपरीत, क्यूटी प्लगइन्स को प्लग-इन प्रकार से मेल खाने वाले उप-डायरेक्ट्रीज़ में डाल देना चाहिए। मंच प्लगइन के लिए सही स्थान प्लेटफार्म नामक एक उपनिर्देशिका है। क्यूटी प्लगइन्स अनुभाग में प्लगइन्स के बारे में अतिरिक्त जानकारी है और क्यूटी उनके लिए कैसे खोजती है अगर एंगल (डिफ़ॉल्ट) का उपयोग किया जाता है, तो आपको इसके अलावा दोनों libEGL. dll और libGLESv2.dll को Qts lib निर्देशिका से और साथ ही डायरेक्टएक्स से एचएलएसएल कंपाइलर को शामिल करना होगा। एचएलएसएल कंपाइलर लाइब्रेरी, डी 3 डीकंपलरएक्स। डीएलएल, जहां एक्सएक्स संस्करण संख्या है जो एंगल (लाइबेलएसवी 2) के विरुद्ध जुड़ा था। यदि क्यूटी आईसीयू या ओपनएसएसएल के विरुद्ध लिंक करने के लिए कॉन्फ़िगर किया गया था, तो संबंधित डीएलएल को भी रिलीज फ़ोल्डर में जोड़ा जाना चाहिए। याद रखें कि यदि आपका अनुप्रयोग कंपाइलर विशिष्ट पुस्तकालयों पर निर्भर करता है, तो ये आपके आवेदन के साथ पुनर्वितरित किया जाना चाहिए। आप यह निर्धारित कर सकते हैं कि निर्भर करता है टूल का उपयोग करके आप कौन-सी लाइब्रेरीज़ आपके ऐप के साथ लिंक कर रहे हैं। अधिक जानकारी के लिए, अनुप्रयोग निर्भरता अनुभाग देखें। शीघ्र ही प्लगइन्स को अच्छी तरह से देखें, लेकिन पहले अच्छी तरह से जाँच लें कि अनुप्रयोग एक तैनात परिवेश में काम करेगा: या तो एक निष्पादन योग्य और क्यूटी डीएलएल की मशीन की प्रतिलिपि बनाएँ जिसे Qt या कोई क्यूटी अनुप्रयोग स्थापित नहीं है, या यदि आप बिल्ड पर परीक्षण करना चाहते हैं मशीन, सुनिश्चित करें कि मशीन में इसके पर्यावरण में क्यूटी नहीं है अगर किसी भी समस्या के बिना आवेदन शुरू होता है, तो हमने सफलतापूर्वक प्लग एंड्रॉप पेंट अनुप्रयोग का एक गतिशील रूप से जोड़ा संस्करण बनाया है। लेकिन एप्लिकेशन की कार्यक्षमता अभी भी गायब होगी क्योंकि हमने अभी तक संबद्ध प्लगइन्स तैनात नहीं किए हैं। प्लगइन्स सामान्य डीएलएल के लिए अलग तरह से काम करते हैं, इसलिए हम उन्हें एक ही निर्देशिका में कॉपी कर सकते हैं क्योंकि हमारे अनुप्रयोग एक्जीक्यूटेबल थे जैसे कि हमने क्यूटी डीएलएल के साथ किया था। प्लग इन की तलाश करते समय, एप्लिकेशन निष्पादन योग्य की निर्देशिका के अंदर एक प्लगइन्स उपनिर्देशिका में खोज करता है। इसलिए हमारे अनुप्रयोग के लिए प्लगइन्स उपलब्ध कराने के लिए, हमें प्लगइन्स उपनिर्देशिका बनाने और प्रासंगिक डीएलएल पर प्रतिलिपि बनाना होगा: प्लग एम्प पेंट एप्लिकेशन चलाने के लिए आवश्यक सभी क्यूटी डीएलएल और एप्लिकेशन विशिष्ट प्लगइन्स को बांटने के लिए एक संग्रह, निम्नलिखित को शामिल करना होगा फ़ाइलें: यह सत्यापित करने के लिए कि एप्लिकेशन को सफलतापूर्वक लागू किया जा सकता है, आप क्यूटी के बिना मशीन पर इस संग्रह को निकाल सकते हैं और बिना किसी संकलक इंस्टॉल किए, और उसे चलाने का प्रयास कर सकते हैं। प्लगइन्स उप-डायरेक्टरी में प्लग इन डालने का एक विकल्प कस्टम खोज पथ को जोड़ना है जब आप QCoreApplication :: addLibraryPath () या QCoreApplication :: setLibraryPaths () का उपयोग कर अपना ऐप्लिकेशन प्रारंभ करते हैं। प्लगइन्स का उपयोग करने का एक लाभ यह है कि उन्हें आसानी से एप्लिकेशन के पूरे परिवार के लिए उपलब्ध कराया जा सकता है। इसके मुख्य रूप से अनुप्रयोग में पथ जोड़ने के लिए अक्सर सबसे सुविधाजनक है, QApplication ऑब्जेक्ट के ठीक बाद बनाया गया है। एक बार पथ जोड़ा जाने के बाद, यह एप्लिकेशन प्लगइन्स के लिए खोज करेगा, साथ ही अनुप्रयोगों की डायरेक्टरी में प्लगइन्स उप-डायरेक्ट्री देखने के अलावा। अतिरिक्त रास्तों के कोई भी नंबर जोड़ा जा सकता है। मैनिफ़ेस्ट फ़ाइलें जब विजुअल स्टूडियो के साथ संकलित एक एप्लिकेशन को तैनात किया जाता है, तो कुछ अतिरिक्त कदम उठाए जाने के लिए सबसे पहले, हमें एप्लिकेशन को लिंक करते समय बनाए गए मैनिफेस्ट फ़ाइल की प्रतिलिपि बनाने की आवश्यकता है। इस मैनिफ़ेस्ट फ़ाइल में साइड-बाय-साइड असेंबलियों, जैसे कि रनटाइम लाइब्रेरी पर एप्लिकेशन निर्भरताएं के बारे में जानकारी शामिल है मेनिफ़ेस्ट फ़ाइल को एक ही फ़ोल्डर में कॉपी करने की आवश्यकता है जैसे कि अनुप्रयोग निष्पादन योग्य। आपको साझा लाइब्रेरी (डीएलएल) के लिए मैनिफ़ेस्ट फ़ाइलों की प्रतिलिपि बनाने की आवश्यकता नहीं है, क्योंकि उनका उपयोग नहीं किया जाता है। अगर साझा लाइब्रेरी पर निर्भरताएं उस अनुप्रयोग का उपयोग करते हुए अलग हैं, तो मैनिफ़ेस्ट फ़ाइल को डीएलएल बाइनरी में एम्बेड करने की आवश्यकता है। क्यूटी 4.1.3 के बाद से, निम्नलिखित CONFIG विकल्प एम्बेडिंग मैनेजमेंट के लिए उपलब्ध हैं: दोनों विकल्पों को डिफ़ॉल्ट रूप से सक्षम किया गया है Embedmanifestexe को निकालने के लिए अपने.pro फ़ाइल में जोड़ें आप MSDN वेबसाइट पर मैनिफ़ेस्ट फ़ाइलों और साइड-बाय-साइड असेंबलियों के बारे में अधिक जानकारी पा सकते हैं। आपके ऐप्लिकेशन के साथ रनटाइम लाइब्रेरी को शामिल करने का सही तरीका यह सुनिश्चित करना है कि वे एंड-यूज़र सिस्टम पर स्थापित हैं। एंड-यूज़र सिस्टम पर रनटाइम लाइब्रेरी स्थापित करने के लिए, आपको अपने अनुप्रयोग के साथ उचित दृश्य सी रिडिर्टेडबल पैकेज (वीसीआरिडिस्ट) एक्ज़ीक्यूटेबल को शामिल करना होगा और यह सुनिश्चित करना होगा कि जब उपयोगकर्ता आपके एप्लिकेशन को इंस्टॉल करता है वे vcredistx64.exe (IA64 और 64-bit) या vcredistx86.exe (32-बिट) नामित हैं और फ़ोल्डर c में पाए जा सकते हैं। वैकल्पिक रूप से, उन्हें वेब से डाउनलोड किया जा सकता है, उदाहरण के लिए विजुअल स्टूडियो 2018 के लिए vcredistx64.exe नोट: आपके द्वारा जहाज किए जाने वाला एप्लिकेशन उसी सी संस्करण के विरुद्ध समान संकलक संस्करण के साथ संकलित होना चाहिए। यह सी रनटाइम पुस्तकालयों के विभिन्न संस्करणों के कारण त्रुटियों की तैनाती को रोकता है। अनुप्रयोग निर्भरता अतिरिक्त पुस्तकालयों विन्यास के आधार पर, संकलक विशिष्ट पुस्तकालयों को आपके आवेदन के साथ पुनर्वितरित किया जाना चाहिए। उदाहरण के लिए, यदि क्यूटी ANGLE का उपयोग करके बनाया गया है इसके साझा लाइब्रेरी और डायरेक्टएक्स से एचएलएसएल कंपाइलर को भी भेज दिया जाएगा। निर्भरता वाकर उपकरण का उपयोग करके आप यह जांच सकते हैं कि आपके आवेदन किस पुस्तकालय से जुड़ रहे हैं। आपको यह करने की ज़रूरत है कि इसे इस तरह चलाएं: यह उन पुस्तकालयों की एक सूची प्रदान करेगा जो आपके आवेदन पर निर्भर करता है और अन्य जानकारी। निर्भर करता है उपकरण के साथ प्लग amp पेंट एक्जीक्यूटेबल (प्लगैन्डपेंट. एक्सए) की रिहाई के निर्माण की देखरेख में, उपकरण निम्न तत्काल निर्भरता को गैर-सिस्टम लाइब्रेरीज़ को सूचीबद्ध करता है: प्लगइन डीएलएल को देखते समय सटीक समान निर्भरताएं सूचीबद्ध होती हैं क्यूटी संस्करण 5.2 से, ओपनएसएसएल के लिए आधिकारिक तौर पर समर्थित संस्करण 1.0.0 या बाद का है। संस्करण gt 0.9.7 और 1.0.0 एलटी काम कर सकते हैं, लेकिन इसकी गारंटी नहीं है। क्यूटी प्लगइन्स सभी क्यूटी जीयूआई अनुप्रयोगों को क्यूटी 5 में क्यूटी प्लेटफार्म एब्सट्रैक्शन (क्यूएपीए) परत लागू करने वाले एक प्लगइन की आवश्यकता होती है। विंडोज के लिए, प्लेटफॉर्म प्लगइन का नाम qwindows. dll है। यह फाइल आपकी वितरण निर्देशिका के तहत एक विशिष्ट उपनिर्देशिका (डिफ़ॉल्ट रूप से, प्लेटफ़ॉर्म) के भीतर स्थित होनी चाहिए। वैकल्पिक रूप से, नीचे बताए गए अनुसार, प्लग-इन खोजने के लिए क्यूटी द्वारा खोज के रास्ते को समायोजित करना संभव है। आपका आवेदन एक या अधिक क्यूटी प्लगइन्स पर भी निर्भर हो सकता है, जैसे प्रिंट समर्थन प्लगइन, जेपीईजी छवि प्रारूप प्लगइन या एसक्यूएल ड्राइवर प्लगइन। किसी भी क्यूटी प्लगइन्स को वितरित करना सुनिश्चित करें जो आपको अपने एप्लिकेशन के साथ की जरूरत है। मंच प्लगइन के समान, प्रत्येक प्रकार के प्लग-इन को आपकी वितरण निर्देशिका के भीतर एक विशिष्ट उपनिर्देशिका (जैसे कि प्रिंसपोर्ट। छवि प्रारूप या sqldrivers) के भीतर स्थित होना चाहिए। क्यूटी प्लगइन्स के लिए खोज पथ क्यूटीकोर लाइब्रेरी में हार्ड-कोड है डिफ़ॉल्ट रूप से, क्यूटी स्थापना की प्लगइन्स उपनिर्देशिका पहली प्लगइन खोज पथ है। हालांकि, पूर्व-निर्धारित पथ जैसे डिफ़ॉल्ट एक के पास कुछ नुकसान हैं उदाहरण के लिए, वे लक्ष्य मशीन पर मौजूद नहीं हो सकते हैं। इस कारण से, आपको यह सुनिश्चित करने के लिए विभिन्न विकल्पों की जांच करनी होगी कि क्यूटी प्लगइन्स पाए जाते हैं: qt. conf का उपयोग करना यह दृष्टिकोण अनुशंसित है यदि आपके पास एक ही प्लगिन साझा करने वाले विभिन्न स्थानों पर निष्पादन योग्य है। QApplication :: addLibraryPath () या QApplication :: setLibraryPaths का उपयोग करना ()। इस दृष्टिकोण की सिफारिश की जाती है अगर आपके पास केवल एक निष्पादन योग्य है जो प्लगइन का उपयोग करेगा QtCore लाइब्रेरी में हार्ड-कोडेड पथ को बदलने के लिए तृतीय पक्ष स्थापना उपयोगिता का उपयोग करना। यदि आप QApplication :: addLibraryPath का उपयोग कर एक कस्टम पथ जोड़ते हैं तो यह इस तरह दिख सकता है: C: customPathplugins C: QtVERSIONplugins E: myApplicationdirectory निष्पादन योग्य इन निर्देशिकाओं में प्लगइन्स और QCoreApplication :: LibraryPaths द्वारा दिए गए QStringList के समान आदेश देखेंगे ( )। नए जोड़े गए पथ को QCoreApplication :: libraryPaths () के लिए जोड़ा गया है जिसका मतलब है कि इसे पहले से खोजा जाएगा। हालांकि, यदि आप QCoreApplication :: setLibraryPaths () का उपयोग करते हैं, तो आप यह निर्धारित करने में सक्षम होंगे कि कौन सा पथ और किस क्रम में वे खोजा जाएंगे। Qt प्लगइन्स दस्तावेज़ कैसे बनाएं, उन कड़ियों की रूपरेखा बताता है जिनके लिए आपको क्यूटी अनुप्रयोगों के लिए प्लगइन के निर्माण और परिनियोजित करने पर ध्यान देना होगा। 2017 क्यूटी कंपनी लिमिटेड। इसमें शामिल दस्तावेज़ीकरण योगदान उनके संबंधित स्वामियों के कॉपीराइट हैं। यहां उपलब्ध कराये गए दस्तावेज को मुफ्त सॉफ्टवेयर फाउंडेशन द्वारा प्रकाशित जीएनयू फ्री डॉक्यूमेंटेशन लाइसेंस संस्करण 1.3 की शर्तों के तहत लाइसेंस प्राप्त किया गया है। Qt और संबंधित लोगो फिनलैंड में क्यूटी कंपनी लिमिटेड के ट्रेडमार्क हैं और दुनिया भर में अन्य देशों। अन्य सभी ट्रेडमार्क उनके संबंधित मालिकों की संपत्ति हैं।
Comments
Post a Comment