दृश्य स्टूडियो 2015 (सामुदायिक संस्करण) में बूस्ट यूनिट परीक्षण का उपयोग करने की कोशिश करते समय मुझे एक समान समस्या थी :
घातक त्रुटि LNK1104: libboost_unit_test_framework-vc140-mt-157
इसलिए मैंने सोचा कि मैं अपना समाधान साझा करूंगा।
आप दो तरीकों से एक बूस्ट यूनिट परीक्षण परियोजना बना सकते हैं (और यह समाधान दोनों के लिए काम करता है):
- बूस्ट यूनिट टेस्ट एडाप्टर का उपयोग करना
- या Win32 कंसोल एप्लिकेशन ( यहां चरण ) बनाकर, और मुख्य फ़ंक्शन को बूस्ट यूनिट परीक्षण फ़ंक्शन ( यहां चरण ) के साथ प्रतिस्थापित कर रहा है ।
यहां दोनों परियोजनाएं प्राप्त करने के लिए मेरे द्वारा उठाए गए कदम हैं:
सबसे पहले, वांछित बढ़ावा संस्करण डाउनलोड करें (उदाहरण के लिए, बढ़ावा_1_57_0 )। आप या तो सही बायनेरिज़ के साथ बूस्ट डाउनलोड कर सकते हैं (msvc v140 का उपयोग करके संकलित), या कमांड लाइन से निम्न कमांड चलाकर खुद बायनेरिज़ को निकाल सकते हैं:
- bootstrap.bat
- "C: \ Program Files (x86) \ Microsoft विज़ुअल स्टूडियो 14.0 \ VC \ vcvarsall.bat" x86
- bjam - झुकना
- bjam -j4 --debug-प्रतीकों = on --build-type = पूर्ण टूलसेट = msvc-14.0 सूत्रण = बहु रनटाइम-लिंक = साझा पता-मॉडल = 32
जहाँ msvc-14.0 निर्दिष्ट करता है कि हमें विजुअल स्टूडियो 2015 संस्करण (VS 2015 = v14.0 = v140) की आवश्यकता है, और पता-मॉडल = 32 निर्दिष्ट करता है कि हमें प्लेटफ़ॉर्म 32 की आवश्यकता है (लेकिन 64 बिट के लिए भी ऐसा ही किया जा सकता है)।
बायनेरिज़ होने के बाद, विज़ुअल स्टूडियो पर जाएं, आपके द्वारा बनाई गई बूस्ट यूनिट परीक्षण परियोजना का चयन करें। पर जाएं प्रोजेक्ट के गुण> विन्यास (मुख्य मेनू से) और निम्न विकल्प बनाने:
" जनरल> प्लेटफ़ॉर्म टूलसेट " को विज़ुअल स्टूडियो 2015 (v140) पर सेट करें।
बूस्टर फ़ोल्डर (जैसे C: \ boost_1_57_0) और बाइनरी फ़ाइलों वाले सबफ़ोल्डर के लिए पथ को शामिल करें (जैसे C: \ boost_1_57_0 \ stage \ lib) में:
- " C \ C ++> अतिरिक्त शामिल निर्देशिका "
- और " लिंकर> अतिरिक्त पुस्तकालय निर्देशिकाएँ "।