Visual Studio에 익숙하지 않은 데 대해 많은 질문이 있습니다. 그러나 나는 이것을 정말로 이해할 수 없다. 이 오류입니다 :Visual Studio 2015에서 해결되지 않은 외부 기호 링커 오류
1>moc_displaycounter.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const Counter::staticMetaObject" ([email protected]@@[email protected]@B)
1>moc_displaymanometer.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const ManoMeter::staticMetaObject" ([email protected]@@[email protected]@B)
1>moc_displaysvgmeter.obj : error LNK2001: unresolved external symbol "public: static struct QMetaObject const SVGMeter::staticMetaObject" ([email protected]@@[email protected]@B)
그래서 내가했던 DUMPBIN/수입 라이브러리에 수출하고이를 반환
Microsoft (R) COFF/PE Dumper Version 14.00.24210.0
Copyright (C) Microsoft Corporation. All rights reserved.
Dump of file analogwidgets.lib
File Type: LIBRARY
Exports
ordinal name
[email protected]@[email protected]@@@Z (public: __cdecl AbstractMeter::AbstractMeter(class QWidget *))
[email protected]@@[email protected]@B (public: static struct QMetaObject const Counter::staticMetaObject)
[email protected]@@[email protected]@B (public: static struct QMetaObject const Item::staticMetaObject)
[email protected]@@[email protected]@B (public: static struct QMetaObject const Led::staticMetaObject)
[email protected]@@[email protected]@B (public: static struct QMetaObject const ManoMeter::staticMetaObject)
[email protected]@@[email protected]@B (public: static struct QMetaObject const PotentioMeter::staticMetaObject)
[email protected]@@[email protected]@B (public: static struct QMetaObject const SVGMeter::staticMetaObject)
내가 가져 오기 라이브러리에 대한 정확한 서명을 확인. 좋은 측정을 위해
은에 의존하여 이러한 기호가 DLL에 있는지 확인합니다 (예를 들어 링크 프로세스에서 부분적으로 작동하지 않지만 가져 오기 라이브러리가 손상되지 않았 음을 확인했습니다). 링크되지 않습니다. 디버그 및 릴리스 x64 빌드 모두 성공하지 못했습니다. 이전에는 다른 버전의 VS에 문제가 없었습니다.
다음에해야 할 일에 대한 아이디어가 있습니까?
일부 정적 클래스 변수를 정의하는 것을 잊어 버린 것처럼 보입니다. –
미확인 된 외부 기호 오류는 사용자가 선언했지만 정의하는 것을 잊어 버렸을 때 발생합니다. 멤버 함수 또는 정적 변수 일 수 있습니다. –