0
當我鏈接到我的C++ DLL程序時,我收到以下錯誤和警告:lnk4022:未修飾符號 - 如何修復?
Severity Code Description Project File Line Suppression State
Warning LNK4022 cannot find unique match for symbol 'Init' MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "void __stdcall Init(void)" ([email protected]@YGXXZ) defined in Release\MTF_Garch.obj MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: long __thiscall ATL::CComCriticalSection::Init(void)" ([email protected]@[email protected]@QAEJXZ) defined in Release\stdafx.obj MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "protected: int __thiscall CAppDestinations::Init(void)" ([email protected]@@IAEHXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: void __thiscall CMFCDragFrameImpl::Init(class CWnd *)" ([email protected]@@[email protected]@@Z) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "protected: void __thiscall CMFCFontComboBox::Init(void)" ([email protected]@@IAEXXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "protected: virtual void __thiscall CMFCPropertyGridCtrl::Init(void)" ([email protected]@@MAEXXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "protected: void __thiscall CMFCPropertyGridProperty::Init(void)" ([email protected]@@IAEXXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "protected: void __thiscall CMFCToolBarSpinEditBoxButton::Init(void)" ([email protected]@@IAEXXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: void __thiscall CPaneDivider::Init(int,class CWnd *)" ([email protected]@@[email protected]@@Z) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: void __thiscall CRecentDockSiteInfo::Init(void)" ([email protected]@@QAEXXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: void __thiscall CRecentPaneContainerInfo::Init(void)" ([email protected]@@QAEXXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "protected: void __thiscall CVSListBoxBase::Init(void)" ([email protected]@@IAEXXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfc140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: long __thiscall ATL::CComCriticalSection::Init(void)" ([email protected]@[email protected]@QAEJXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\mfcs140u.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: long __thiscall ATL::CComCriticalSection::Init(void)" ([email protected]@[email protected]@QAEJXZ) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\atls.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Warning LNK4002 "public: int __thiscall ATL::_stdcallthunk::Init(unsigned long,void *)" ([email protected][email protected]@@[email protected]) defined in D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Tools\MSVC\14.10.25017\atlmfc\lib\x86\atls.lib MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Error LNK2001 unresolved external symbol Init MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\MTF_Garch\MTF_Garch.def 1
Error LNK1120 1 unresolved externals MTF_Garch d:\Users\ypx7647\Documents\Visual Studio 2017\Projects\MTF_Garch\Release\MTF_Garch.lib 1
顯然,在我的VS 2017年社區解決方案有很多init的存在,但我不知道他們來自。
的DEF文件是這樣的:
LIBRARY MTF_Garch
EXPORTS
Init @1
OnParamsChange @2
Calculate @3
ReplaceStr @4
IntrfProcsRec @5
而我是包括:
#include <windows.h>
#include "IndicatorInterfaceUnit.h"
#include "TechnicalFunctions.h"
#include <string>
#include <vector>
#include "Garch.h"
在Garch.h
#include <ql/auto_link.hpp>
#include <ql/quantlib.hpp>
#include <boost/geometry/index/detail/utilities.hpp>
#include <ql/models/volatility/garch.hpp>
#include <ql/math/optimization/simplex.hpp>
#include <ql/math/optimization/levenbergmarquardt.hpp>
我不使用ATL文件知道,儘管它是我創建的MFC DLL解決方案。剩下的我不確定它們是什麼。
因爲我對C++相當陌生,有人可以告訴我怎麼去告訴鏈接器它應該使用哪個Init(我知道有一個.def文件的EXPORT語法,但一直沒能找到文檔)或者我如何擺脫所有其他我不需要的東西。
謝謝。
謝謝,那些過去的錯誤。 – Andrew