के लिए यूनिट परीक्षणों को संकलित करते समय अनसुलझा बाहरी दृश्य मैं दृश्य सी ++ प्रोजेक्ट के लिए यूनिट परीक्षण बनाना चाहता हूं। मैंने these MSDN instructions का पालन करने की कोशिश की। मुझे ऐसे पृष्ठ मिल गए हैं जहां वे अप्रबंधित/मिश्रित/शुद्ध कोड के बीच अंतर करते हैं, लेकिन मैं उन अवधारणाओं को पूरी तरह से समझ नहीं पा रहा हूं। मेरा कोड .NET का उपयोग नहीं करता है और कुछ कोड समायोजन के साथ MinGW के तहत संकलित होने की संभावना है।विजुअल सी ++ 2012
मेरा मुख्य प्रोजेक्ट निष्पादन योग्य बनाता है, इसलिए मैंने के तहत दिए गए चरणों का पालन किया परीक्षण परियोजना से निर्यात किए गए कार्यों का संदर्भ देने के लिए।
मैं मूल निवासी यूनिट टेस्ट परियोजना साथ चला गया: शुरुआत के लिए मैं अलग परियोजना विकल्प मिला है। मैंने अपने मुख्य प्रोजेक्ट का संदर्भ जोड़ा और मैंने को से $(SolutionDir)\Cubes;$(IncludePath)
पर निर्देशित किया। मैं अपने कोड लिखा था और यह मिल गया जब संकलन:
1>Creating library C:\Users\Pieter\Dropbox\Unief\TTUI\TTUIproject\Cubes\Debug\CubesTest.lib and object C:\Users\Pieter\Dropbox\Unief\TTUI\TTUIproject\Cubes\Debug\CubesTest.exp
1>LayoutTest.obj : error LNK2019: unresolved external symbol "public: __thiscall Room::Room(void)" ([email protected]@[email protected]) referenced in function "public: void __thiscall CubesTest::LayoutTest::NumOfRoomsConsistency(void)" ([email protected]@[email protected]@QAEXXZ)
1>LayoutTest.obj : error LNK2019: unresolved external symbol "public: __thiscall Layout::Layout(class Room *,int)" ([email protected]@[email protected]@@[email protected]) referenced in function "public: void __thiscall CubesTest::LayoutTest::NumOfRoomsConsistency(void)" ([email protected]@[email protected]@QAEXXZ)
1>LayoutTest.obj : error LNK2019: unresolved external symbol "public: void __thiscall Layout::add(int,int,class Room *)" ([email protected]@@[email protected]@@Z) referenced in function "public: void __thiscall CubesTest::LayoutTest::NumOfRoomsConsistency(void)" ([email protected]@[email protected]@QAEXXZ)
1>LayoutTest.obj : error LNK2019: unresolved external symbol "public: void __thiscall Layout::clear(int,int,bool)" ([email protected]@@[email protected]) referenced in function [email protected]@[email protected]@QAEXXZ$0
1>C:\Users\Pieter\Dropbox\Unief\TTUI\TTUIproject\Cubes\Debug\CubesTest.dll : fatal error LNK1120: 4 unresolved externals
अगर मैं गलत नहीं हूँ, इसका मतलब है कि संकलक हेडर फाइल, लेकिन नहीं स्रोत फ़ाइलें पाता है। मैं क्या खो रहा हूँ?
नहीं, यह मतलब है कि ** लिंकर ** अपने संदर्भित प्रतीक वाले बाइनरी नहीं मिल रहा है। – SomeWittyUsername
ठीक है, मैं लिंकर को कैसे कहूं कि आवश्यक फाइलें कहां मिलें? मैंने सफलतापूर्वक [यह] (http://i.imgur.com/jitTd.png) सफलतापूर्वक कोशिश की है। – Pieter
यह चाल करना चाहिए। यह भी सुनिश्चित करें कि आप * वास्तव में * अपनी फ़ाइलों वाली सभी परियोजनाओं को संकलित करें (निर्भरता की जांच करें) – SomeWittyUsername