एक स्रोत विशिष्ट सी क्रम जुड़ा हुआ पुस्तकालय है। चूंकि डीएलएल से लिंक करने के लिए डिफ़ॉल्ट मामला (कम से कम आधुनिक संस्करणों में) है, यह करना काफी आसान है। यूटिलिटी Dependency Walker यह सत्यापित करने के लिए लगभग अनिवार्य है कि आप जानते हैं कि डीएलएल वास्तव में क्या लोड हो रहे हैं, और यह आपको बताएगा कि कौन सी सी रनटाइम डीएलएल उपयोग में है। यद्यपि निर्भरता वॉकर को माइक्रोसॉफ़्ट प्लेटफॉर्म एसडीके में शामिल किया गया है, लेकिन इसे स्वतंत्र रूप से बढ़ा दिया गया है और जिस साइट से मैंने लिंक किया है वह वर्तमान विकास का घर है।
VC6 और MinGW डिफ़ॉल्ट रूप से msvcrt.dll करने के लिए दोनों लिंक, तो यह उन दोनों के बीच भेद नहीं होंगे। कुछ प्रयासों के साथ, बाद में सी रनटाइम संस्करणों से लिंक करने के लिए मिनजीडब्लू भी बनाया जा सकता है, इसलिए आपको स्वतंत्र रूप से मिनजीडब्ल्यू को रद्द करने की आवश्यकता होगी।
Runtime VC Version
---------- -------------
MSVCRT.DLL VC6
MSCVR80.DLL VC8 (VS 2005)
MSCVR90.DLL VC9 (VS 2008)
अन्य रनटाइम डीएलएल भी अच्छे संकेत होंगे, उदाहरण के लिए डेल्फी के रनटाइम के संदर्भ शायद इंगित करते हैं कि EXE वास्तव में डेल्फी से बनाया गया था, न कि सी टूलचेन बिल्कुल।
प्रतीकों .EXE फ़ाइल से छीन नहीं किया गया है, तो आप कुछ सुराग जहाँ से आंतरिक प्रतीकों मौजूद हैं मिल सकती है। उदाहरण के लिए, _sjlj_init
जैसी किसी चीज़ का संदर्भ शायद इंगित करता है कि setjmp/longjmp अपवाद हैंडलिंग के लिए कॉन्फ़िगर किया गया एक मिनीजीडब्ल्यू जीसीसी 3.x कुछ बिंदु पर शामिल था।
इस जानकारी की आवश्यकता के लिए आपको क्या चल रहा है? – ojblass
सबसे पहले, यह सोचकर कि वीएस के किस संस्करण का उपयोग हमारे यहां मौजूद कुछ बाइनरी बनाने के लिए किया गया था। (मैं लगभग एक मुफ्त प्रदर्शन बढ़ावा के लिए वीएस के एक नए संस्करण के साथ पुनर्निर्माण के बारे में सोच रहा था।) मुझे किसी ऐसे व्यक्ति को मिला जो इन विशेष द्विआधारीओं के लिए उत्तर जानता है, लेकिन मुझे उत्सुकता है कि यह सामान्य रूप से किया जा सकता है। – kquinn
किसी भी मामले में नवीनतम कंपाइलर का उपयोग करके पुनर्निर्माण करने के लिए उस मामले में जवाब नहीं है? या तो आप एक ही कंपाइलर का उपयोग करके पुन: संकलित करते हैं, कोई बदलाव नहीं करते हैं, या आप एक नए कंपाइलर का उपयोग करके समाप्त होते हैं, जिससे आपको बताए गए फायदे मिलते हैं। – jalf