के साथ निर्मित एक स्थिर लाइब्रेरी से लिंक करना सुरक्षित है, मैं अपनी सी ++ परियोजनाओं का परीक्षण करने के लिए GoogleTest का उपयोग करता हूं, और उस प्रीकंपिल्ड लाइब्रेरी को अब उबंटू पैकेज में वितरित नहीं किया गया था, मुझे परियोजना वेबसाइट पर निम्न मिला:क्या विभिन्न कंपाइलर झंडे
आप अलग संकलक झंडे का उपयोग करके Google टेस्ट और अपने परीक्षण कोड संकलन है, वे (गूगल टेस्ट में #if के उपयोग के कारण जैसे) एक ही वर्ग/समारोह/चर के विभिन्न परिभाषाओं देख सकते हैं। इसलिए, आपकी सैनिटी के लिए, हम पूर्व-संकलित Google टेस्ट लाइब्रेरी इंस्टॉल करने से बचने की सलाह देते हैं। इसके बजाए, प्रत्येक प्रोजेक्ट को Google टेस्ट स्वयं संकलित करना चाहिए ताकि यह सुनिश्चित हो सके कि फ़्लैग का उपयोग Google टेस्ट और परीक्षण दोनों के लिए किया जाता है।
क्या मैं इस से ले कि यह एक बुरा विचार है परियोजना परीक्षण किया जा रहा से अलग GoogleTest संकलित करने के लिए है। जो मुझे समझ में नहीं आता है यह है कि यह सिर्फ एक GoogleTest बात है, या यदि यह पुस्तकालयों को जोड़ने के लिए एक सामान्य बात है।
प्रश्न
वहाँ किसी भी स्थिति है जिसमें यह तीसरे पक्ष के पुस्तकालयों, संकलक झंडे या अन्यथा precompiled से जोड़ने के लिए, और यदि नहीं असुरक्षित है है, क्या GoogleTest में ऐसी क्या खास है?
आपका उद्धरण महत्वपूर्ण हिस्सा गायब प्रतीत होता है: 'यदि आप विभिन्न संकलक झंडे का उपयोग करके Google टेस्ट और अपने परीक्षण कोड को संकलित करते हैं, तो वे एक ही कक्षा/फ़ंक्शन/चर के विभिन्न परिभाषाएं देख सकते हैं (उदाहरण के लिए #if के उपयोग के कारण Google टेस्ट में)।' –
मैंने आपके द्वारा बताए गए बिट के साथ उद्धरण अपडेट किया है। –