मेरे पास 32-बिट है। इसलिए बाइनरी-केवल लाइब्रेरी है और मुझे 64-बिट प्रोग्राम उत्पन्न करना है जो इसका उपयोग करता है। क्या इसे लपेटने या परिवर्तित करने का कोई तरीका है, इसलिए इसका उपयोग 64-बिट प्रोग्राम के साथ किया जा सकता है?32-बिट लाइब्रेरी को 64-बिट प्रोग्राम से लिंक करना
उत्तर
नहीं। आप 64 बिट प्रोग्राम के अंदर सीधे 32 बिट कोड से लिंक नहीं कर सकते हैं।
सबसे अच्छा विकल्प 32 बिट (स्टैंडअलोन) प्रोग्राम संकलित करना है जो run on your 64bit platform (using ia32) कर सकता है, और उसके बाद अपने 64 बिट प्रोग्राम से संवाद करने के लिए इंटर-प्रोसेस संचार का एक रूप उपयोग करें।
@Reed: फिर Win95 कैसे 32 बिट कोड से संक्रमण को प्रबंधित करता है 16 बिट ला ला थंकिंग '? क्या वह स्टैक पॉइंटर और रजिस्टरों के आसपास बदलने के लिए असेंबलर स्तर पर था? – t0mm13b
ओएस ने इसे स्पष्ट रूप से संभाला, लेकिन ऐसा कुछ भी नहीं है जो इसे लिनक्स या आधुनिक 64 बिट विंडोज ऑपरेटिंग सिस्टम में अनुमति देता है, इसलिए आपको पोस्ट किए गए वर्कअराउंड का उपयोग करना होगा। –
@Reed: मेरे प्रश्न का उत्तर देने के लिए धन्यवाद। :) – t0mm13b
यह संभव है, लेकिन दृश्यों के पीछे कुछ गंभीर जादू के बिना नहीं और आपको जवाब पसंद नहीं आएगा। या तो 32 बिट सीपीयू का अनुकरण करें (नहीं, मैं मजाक नहीं कर रहा हूं) या मुख्य प्रक्रिया को वापस 32 बिट पर स्विच करें। यद्यपि नकल धीमा हो सकता है। तकनीक के
फिर प्रत्येक 32 बिट लाइब्रेरी से और उससे मेमोरी एक्सेस की तालिका रखें और उन्हें सिंक में रखें। सैद्धांतिक पूर्णता प्राप्त करना बहुत मुश्किल है, लेकिन कुछ व्यावहारिक होना बहुत आसान होना चाहिए, लेकिन बहुत कठिन होना चाहिए।
ज्यादातर मामलों में, मुझे दो प्रक्रियाओं पर विश्वास है और फिर दोनों के बीच आईपीसी वास्तव में सबसे आसान हो सकता है, जैसा कि सुझाव दिया गया है।
64-बिट कोड से 32-बिट प्लगइन चलाने के लिए आईपीसी का उपयोग करने के उदाहरण के लिए, ओपन सोर्स NSPluginWrapper पर देखें।
- 1. स्टेटिक लाइब्रेरी से लिंक
- 2. विजुअल स्टूडियो 2005 में पाइथन आयात लाइब्रेरी से लिंक करना
- 3. प्रोग्राम लाइब्रेरी सामग्री प्रोग्रामेटिक रूप से
- 4. स्थिर लिंक लाइब्रेरी को गतिशील डीएल
- 5. gyp - लिंक लाइब्रेरी स्वाद
- 6. किसी साझा लाइब्रेरी में लिंक होने पर फ़ंक्शंस को एक स्थिर लाइब्रेरी से छीनने से रोकना?
- 7. कोर फ़ाइल से प्रोग्राम स्थिति को पुनर्स्थापित करना
- 8. यूनिक्स पर्यावरण में हमारे प्रोग्राम में पॉको लाइब्रेरी (पुस्तकालय) को कैसे लिंक करें
- 9. मैं डायनामिक लिंक लाइब्रेरी को सही तरीके से कैसे लिंक और बनाया?
- 10. निर्माण के दौरान एक साझा लाइब्रेरी को एक स्थिर लाइब्रेरी से लिंक करें?
- 11. स्ट्रीमिंग सी ++ प्रोग्राम और साझा लाइब्रेरी
- 12. लिंक को XSLT में कनवर्ट करना
- 13. मैं कोड :: ब्लॉक के साथ लाइब्रेरी से कैसे लिंक करूं?
- 14. प्रोग्राम बनाने के लिए अनुशंसित जावा लाइब्रेरी
- 15. एंड्रॉइड डायनामिक लिंक्ड लाइब्रेरी मुख्य प्रोग्राम
- 16. जावा प्रोग्राम से एसवीएन कमांड को कॉल करना
- 17. जीमेल ईमेल से लिंक रंग अलग करना?
- 18. सीएमके पीकेजी-कॉन्फ़िगर लाइब्रेरी लिंक पथ
- 19. प्रोग्राम साझा रूप से साझा लाइब्रेरी में किसी फ़ंक्शन का हस्ताक्षर प्राप्त करना संभव है?
- 20. प्रक्रिया प्रविष्टि बिंदु गतिशील लिंक लाइब्रेरी Core.dll
- 21. संस्करण-क्रॉस-संकलित प्रोग्राम में स्टेटिक लाइब्रेरी
- 22. सीएमकेई: लाइब्रेरी बनाएं और इसके खिलाफ लिंक
- 23. लिनक्स में अन्य साझा लाइब्रेरी के विरुद्ध साझा लाइब्रेरी को कैसे लिंक करें?
- 24. सीएमके target_link_libraries मेरी लाइब्रेरी को लिंक नहीं कर रहा है
- 25. एक पाइथन प्रोग्राम को समाप्त करना
- 26. एक लिंक को पूर्ण स्थान प्रदर्शित करना
- 27. एक Tdws प्रोग्राम को क्रमबद्ध करना
- 28. एंड्रॉइड एनडीके एप्लिकेशन में एफएफटीडब्लू को लिंक करना
- 29. प्रोग्राम एक लाइब्रेरी से स्थिर रूप से जुड़ा हुआ है लेकिन अभी भी
- 30. विज़िट किए गए लिंक को रेखांकित करना
मैं लाइब्रेरी कोड को 64 बिट लक्ष्यीकरण के पुन: संकलित करने का सुझाव देने जा रहा था, लेकिन इंप्रेशन प्राप्त करें कि आपके पास इसका स्रोत नहीं है ... मुझे संदेह है कि 64 बिट कोड 32 बिट तक 'थंक' हो सकता है .. शायद यह नीचे हो सकता है लिनक्स जीसीसी? लेकिन फिर फिर यह 'थंकिंग' Win95 की एक विशेषता थी (याद रखें?) 32 बिट कोड 16 बिट कोड कॉल कर रहा है ... क्या आपने 64 बिट डायनामिक लाइब्रेरी (.so) को संदर्भित करने और इसे चलाने के 64 बिट कोड को जोड़ने का प्रयास किया है? – t0mm13b
आधुनिक 64 बिट ऑपरेटिंग सिस्टम में से कोई भी "थंकिंग" समतुल्य नहीं है। यह काम नहीं करेगा। –