2013-04-29 7 views
9

विजुअल स्टूडियो 2010 का उपयोग करके, मैं इसमें सीपीपी फ़ाइल के सापेक्ष #pragma टिप्पणी (lib) में पथ निर्दिष्ट करना चाहता हूं।#pragma टिप्पणी के साथ सापेक्ष पथ (lib)

मैं foo.cpp में

#pragma comment(lib, __FILE__"\\..\\foo.lib") 

की कोशिश की और यह काम करने के लिए लगता है। हालांकि, यह मेरे लिए हैकिश दिखाई देता है।

क्या कम हैकिश तरीका है?

उत्तर

6

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

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

ध्यान रखें कि #pragma आमतौर पर क्लाइंट प्रोग्रामर को स्थिर लिंक लाइब्रेरी के उचित संस्करण का उपयोग करने में मदद करने के लिए सबसे उपयोगी है। आपको आम तौर पर एक स्थिर .lib, डीबग बनाम रिलीज और/एमटी बनाम/एमडी के 4 बिल्ड प्रदान करना होगा। संभावित रूप से वीएस संस्करणों की संख्या से गुणा करके आप समर्थन करने के इच्छुक हैं। यह जल्दबाजी में बालों वाली हो सकती है। _DLL, _DEBUG और _MSC_VER पूर्वनिर्धारित मैक्रोज़ आपको सही #pragma उत्पन्न करने में मदद करते हैं।

संबंधित मुद्दे