गोलंग में स्टेटिक बाइनरी बनाने के लिए झंडे
डॉकर स्क्रैच बेस का उपयोग करके गोलांग में स्टेटिक बाइनरी बनाते समय, CGO_ENABLED दोनों को शामिल करना आवश्यक है =0 और -ldflags '-extldflags "-static"' झंडे। हालांकि दोनों विकल्प निरर्थक लग सकते हैं, वे स्थिर बायनेरिज़ प्राप्त करने में विशिष्ट भूमिका निभाते हैं।
CGO_ENABLED=0
यह ध्वज गो रनटाइम में सी कोड के उपयोग को अक्षम करता है। सीजीओ (सी गो) गो प्रोग्राम के भीतर सी कोड के साथ इंटरफेस करने की अनुमति देता है। CGO_ENABLED=0 सेट करके, आप गो को किसी भी सी लाइब्रेरी से लिंक करने का प्रयास करने से रोकते हैं, यह सुनिश्चित करते हुए कि निर्मित बाइनरी आत्मनिर्भर है।
-ldflags '-extldflags \"-static\"'
यह ध्वज बाहरी पुस्तकालयों को लिंक करते समय लिंकर को -static विकल्प का उपयोग करने का निर्देश देता है। -स्टैटिक लिंकर को रनटाइम वातावरण में मौजूद रहने के लिए उन पर निर्भर रहने के बजाय, बाइनरी के भीतर सभी निर्भरताओं को स्थिर रूप से शामिल करने के लिए कहता है। यह रनटाइम लाइब्रेरी लुकअप की आवश्यकता को समाप्त करता है और बाइनरी को बाहरी लाइब्रेरी उपलब्धता से स्वतंत्र बनाता है।
दोनों झंडों को मिलाकर, आप सुनिश्चित करते हैं कि निर्मित बाइनरी पूरी तरह से स्थिर है, जिसमें गो रनटाइम और किसी भी आवश्यक बाहरी निर्भरता दोनों शामिल हैं। इसका निष्पादन योग्य कोड। यह सुनिश्चित करता है कि बाइनरी को अतिरिक्त रनटाइम घटकों या डायनेमिक लिंकिंग की आवश्यकता के बिना किसी भी वातावरण में निष्पादित किया जा सकता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3