स्टेटिक बाइनरी बनाना


14

मैंने एक एप्लीकेशन स्थापित किया है [उदा fdisk]। लेकिन इसके निष्पादन के लिए पुस्तकालयों की आवश्यकता थी। मैं उपयोगिता / उपकरण की तलाश कर रहा हूं जो मुझे पहले से स्थापित बायनेरिज़ से एक स्थिर बाइनरी बनाने में मदद करेगा । ताकि मैं इसे कहीं भी उपयोग कर सकूं।

एकमात्र विश्वसनीय उपकरण जो मुझे मिला, ErmineLightवह यहां से है , लेकिन यह एक शेयर-वेयर है।

क्या कोई ओपन-सोर्स सॉफ़्टवेयर उसी के लिए उपलब्ध है?

EDIT fdisk सिर्फ एक उदाहरण है। मैं ज्यादातर समय LFS पर काम करता हूं, इसलिए यदि मुझे किसी भी उपयोगिता का उपयोग करना है, तो मुझे निम्न चरणों का पालन करना होगा

  1. स्रोत डाउनलोड करें
  2. कॉन्फ़िगर
  3. बनाना
  4. परीक्षण करें
  5. स्थापित करें,

तो बस समय बचाने के लिए, मैं एक समाधान की तलाश कर रहा हूं जिसमें मैं डेबियन से या फेडोरा से या अन्य विकृति से एक स्थिर द्विआधारी बनाऊंगा, इसे एलएफएस पर कोशिश करूंगा, और अगर यह ठीक काम करता है या मेरी आवश्यकता के अनुसार, मैं करूंगा संकलन के लिए स्रोत-कोड के साथ जाएं।


1
क्या लक्ष्य केवल हस्तांतरण में आसानी है (यानी इसे एक USB पर रखें, उस प्रोसेसर आर्क के साथ कहीं भी ले जाएं)?
माइक पेनिंगटन

जवाबों:


15

अगर fdisk सिर्फ एक उदाहरण है और आपका लक्ष्य वास्तव में गतिशील निष्पादक से स्थिर निष्पादन योग्य बनाना है, तो एल्फ स्टैटिफायर का प्रयास करें । यहां तक ​​कि Ermine (Ermine विक्रेता, इसलिए कैविएट (गैर-खाली)) के साथ तुलना है । ध्यान दें कि

  • यदि आपके पास कई निष्पादन योग्य हैं, तो उनका संयुक्त आकार गतिशील रूप से जुड़े निष्पादनयोग्य प्लस आवश्यक गतिशील पुस्तकालयों के संयुक्त आकार से अधिक होने की संभावना है।
  • जीएनयू परिवाद की विशेषताएं हैं जो एक सांख्यिकीय रूप से जुड़े निष्पादनयोग्य में काम नहीं कर सकते हैं, जैसे कि एनएसएस (उपयोगकर्ता नाम, मेजबान नाम आदि के डेटाबेस) और स्थानीय-संबंधित सुविधाएँ।

यदि आपका लक्ष्य सिस्टम टूल्स का एक छोटा, पोर्टेबल सूट है, तो आप बिजीबॉक्स की तलाश कर रहे हैं , एम्बेडेड सिस्टम (सहित fdisk) के लिए इच्छित कोर टूल का एक सूट । आपको ग्लिबेक की तुलना में छोटे मानक पुस्तकालय में भी रुचि हो सकती है, उदाहरण के लिए डाइटलिब या ibClibc


1
मैंने एल्फ स्टैटिफायर की कोशिश की, लेकिन मेरे आश्चर्य को। काम नहीं किया। यह segfaults है। मैंने कई उपयोगिताओं के साथ कई वितरणों के साथ कई बार कोशिश की।
SHW

1
सम्भवत: इसका पता यादृच्छिकता के लिए लगता है: इसे यहाँ समझाया गया है: linux-magazine.com/Issues/2009/105/Ermine-vs.-Statifier
रमनो

0

खैर ... यह बहुत बुरा विचार है। लेकिन, यह संभव है।

जैसा कि fdisk खुला स्रोत है, बस इसके स्रोत को पकड़ो, और Makefile को देखें। आपको एक विकल्प ढूंढना चाहिए जो संकलन में gcc करने के लिए "-static" पास करेगा।

मैं C / C ++ गुरु नहीं हूं, लेकिन जहां तक ​​मैं जानता हूं कि मौजूदा गतिशील रूप से जुड़े बाइनरी से एक स्टेटिकली-लिंक्ड बाइनरी बनाना संभव नहीं है।

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

यह मेरे लिए और अधिक समझ में आता है क्योंकि आप शायद अपने लिनक्स / यूनिक्स स्थापना को चलाने वाले डिस्क को संशोधित करना चाहते हैं।


आपका उत्तर विरोधाभासी लगता है, आपने कहा ... "बहुत बुरा विचार। लेकिन, यह संभव है", और फिर "... एक मौजूदा गतिशील रूप से जुड़े द्विआधारी से एक सांख्यिकीय रूप से जुड़ा हुआ बाइनरी बनाना संभव नहीं है"। कृपया अपना उत्तर स्पष्ट करें, यह सबसे अधिक उपयोगी होगा।
जेएम बेकर

@ टेकजिला: एक स्थिर द्विआधारी बनाना संभव है, बस प्रति tiktak नहीं, एक अतिरिक्त गतिशील रूप से जुड़े बाइनरी से एक बनाना । हालांकि, बाद में करने के लिए कुछ संभावित क्षमताओं के लिए स्वीकृत उत्तर देखें। : [नोट टिप्पणी अधिक भविष्य पाठकों की आलोचना कुछ भी यहाँ है कि करने के लिए की तुलना में इरादा है।]
lindes

-3

आप ELFex Linker का उपयोग भी कर सकते हैं , यह एक बहुत अच्छा प्रोग्राम है जिसे मैंने अभी-अभी खोजा है, इसकी gui और गतिशील निष्पादन योग्य से स्थिर निष्पादनयोग्य बना सकता है।


लिंक काम नहीं करता है।
जकुजे

लिंक मेरे लिए काम करता है और सीधे सवाल का जवाब देता है। मेरा सुझाव है कि यह स्पैम नहीं है।
रोज़

लिंक मेरे लिए काम करता है। पृष्ठ में टाइपो / व्याकरणिक / संपादकीय त्रुटियों की संख्या है जो आप एक पेशेवर प्रोग्रामर के काम से उम्मीद कर सकते हैं - जितना आप एक फ़िशिंग ईमेल से अपेक्षा करेंगे उससे कम आप एक पेशेवर वेबसाइट से उम्मीद करेंगे। उपरोक्त पोस्ट की तरह ही, इसके बारे में सोचें। ऐसा लगता है कि यह ब्रांड नया उपयोगकर्ता एक नई वेब साइट के लिए प्रतीत होता है कि एक लिंक पोस्ट करने के लिए बस स्टैक एक्सचेंज में शामिल हो जाएगा।
जी-मैन का कहना है
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.