I accountered an error in the last step of the build process for Windows x64
I used Visual studio 2017 15.9.36 and CMAKE version 3.2
I got this error when trying the nmake
command :
`nmake
Microsoft (R) Program Maintenance Utility Version 14.16.27045.0
Copyright (C) Microsoft Corporation. Tous droits réservés.
[ 20%] Linking CXX shared library ....\lib\mlpdr.dll
LINK Pass 1: command "C:\PROGRA2\MICROS2\2017\PROFES1\VC\Tools\MSVC\14161.270\bin\Hostx64\x64\link.exe /nologo @CMakeFiles\mlpdr.dir\objects1.rsp /out:....\lib\mlpdr.dll /implib:....\lib\mlpdr.lib /pdb:C:\Users[REDACTED]\Downloads\light-LPR-master\build\lib\mlpdr.pdb /dll /version:0.0 /machine:x64 /debug /INCREMENTAL /DEF:CMakeFiles\mlpdr.dir\exports.def -LIBPATH:C:\Users\[REDACTED]\Downloads\light-LPR-master\lib-win32 MNN.lib C:\Users\[REDACTED]\Downloads\opencv\build\x64\vc15\lib\opencv_world342d.lib C:\Users\User\Downloads\opencv\build\x64\vc15\lib\opencv_world342d.lib C:\Users\User\Downloads\opencv\build\x64\vc15\lib\opencv_world342d.lib C:\Users\User\Downloads\opencv\build\x64\vc15\lib\opencv_world342d.lib kernel32.lib user32.lib gdi32.lib winspool.lib shell32.lib ole32.lib oleaut32.lib uuid.lib comdlg32.lib advapi32.lib /MANIFEST /MANIFESTFILE:CMakeFiles\mlpdr.dir/intermediate.manifest CMakeFiles\mlpdr.dir/manifest.res" failed (exit code 1120) with the following output:
CrÚation de la bibliothÞque ....\lib\mlpdr.lib et de l'objet ....\lib\mlpdr.exp
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: __cdecl MNN::Tensor::Tensor(class MNN::Tensor const *,enum MNN::Tensor::DimensionType,bool)" (_imp??0Tensor@MNN@@qeaa@PEBV01@W4DimensionType@01@_N@Z) rÚfÚrencÚ dans la fonction "private: void __cdecl mlpdr::MLPDR::recognize_plate_infos(class cv::Mat const &,class std::vector<struct mlpdr::PlateInfo,class std::allocator > &)" (?recognize_plate_infos@MLPDR@mlpdr@@AEAAXAEBVMat@cv@@aeav?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@@z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: __cdecl MNN::Tensor::~Tensor(void)" (_imp??1Tensor@MNN@@qeaa@XZ) rÚfÚrencÚ dans la fonction "private: void __cdecl mlpdr::MLPDR::recognize_plate_infos(class cv::Mat const &,class std::vector<struct mlpdr::PlateInfo,class std::allocator > &)" (?recognize_plate_infos@MLPDR@mlpdr@@AEAAXAEBVMat@cv@@aeav?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@@z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: static class MNN::Tensor * __cdecl MNN::Tensor::create(class std::vector<int,class std::allocator > const &,struct halide_type_t,void *,enum MNN::Tensor::DimensionType)" (_imp?create@Tensor@MNN@@SAPEAV12@AEBV?$vector@HV?$allocator@H@std@@@std@@Uhalide_type_t@@PEAXW4DimensionType@12@@z) rÚfÚrencÚ dans la fonction "public: static class MNN::Tensor * __cdecl MNN::Tensor::create(class std::vector<int,class std::allocator > const &,void *,enum MNN::Tensor::DimensionType)" (??$create@M@Tensor@MNN@@SAPEAV01@AEBV?$vector@HV?$allocator@H@std@@@std@@PEAXW4DimensionType@01@@z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: bool __cdecl MNN::Tensor::copyFromHostTensor(class MNN::Tensor const *)" (_imp?copyFromHostTensor@Tensor@MNN@@QEAA_NPEBV12@@z) rÚfÚrencÚ dans la fonction "void __cdecl mlpdr::fillInput(class std::vector<int,class std::allocator > const &,class cv::Mat const &,class MNN::Tensor *)" (?fillInput@mlpdr@@YAXAEBV?$vector@HV?$allocator@H@std@@@std@@AEBVMat@cv@@PEAVTensor@MNN@@@z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: bool __cdecl MNN::Tensor::copyToHostTensor(class MNN::Tensor *)const " (_imp?copyToHostTensor@Tensor@MNN@@QEBA_NPEAV12@@z) rÚfÚrencÚ dans la fonction "private: void __cdecl mlpdr::MLPDR::recognize_plate_infos(class cv::Mat const &,class std::vector<struct mlpdr::PlateInfo,class std::allocator > &)" (?recognize_plate_infos@MLPDR@mlpdr@@AEAAXAEBVMat@cv@@aeav?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@@z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: enum MNN::Tensor::DimensionType __cdecl MNN::Tensor::getDimensionType(void)const " (_imp?getDimensionType@Tensor@MNN@@qeba?AW4DimensionType@12@XZ) rÚfÚrencÚ dans la fonction "private: void __cdecl mlpdr::MLPDR::recognize_plate_infos(class cv::Mat const &,class std::vector<struct mlpdr::PlateInfo,class std::allocator > &)" (?recognize_plate_infos@MLPDR@mlpdr@@AEAAXAEBVMat@cv@@aeav?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@@z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: class std::vector<int,class std::allocator > __cdecl MNN::Tensor::shape(void)const " (_imp?shape@Tensor@MNN@@qeba?AV?$vector@HV?$allocator@H@std@@@std@@xz) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,float,float,float,float)" (??0MLPDR@mlpdr@@qeaa@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@Mmmm@Z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: int __cdecl MNN::Tensor::width(void)const " (_imp?width@Tensor@MNN@@QEBAHXZ) rÚfÚrencÚ dans la fonction "public: class std::vector<struct mlpdr::PlateInfo,class std::allocator > __cdecl mlpdr::MLPDR::Detect_MaxFace(class cv::Mat const &,int,int)" (?Detect_MaxFace@MLPDR@mlpdr@@qeaa?AV?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@AEBVMat@cv@@hh@Z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: int __cdecl MNN::Tensor::height(void)const " (_imp?height@Tensor@MNN@@QEBAHXZ) rÚfÚrencÚ dans la fonction "public: class std::vector<struct mlpdr::PlateInfo,class std::allocator > __cdecl mlpdr::MLPDR::Detect_MaxFace(class cv::Mat const &,int,int)" (?Detect_MaxFace@MLPDR@mlpdr@@qeaa?AV?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@AEBVMat@cv@@hh@Z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: int __cdecl MNN::Tensor::batch(void)const " (_imp?batch@Tensor@MNN@@QEBAHXZ) rÚfÚrencÚ dans la fonction "void __cdecl mlpdr::ctc_decode(class MNN::Tensor *,class std::vector<int,class std::allocator > &)" (?ctc_decode@mlpdr@@YAXPEAVTensor@MNN@@aeav?$vector@HV?$allocator@H@std@@@std@@@z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: int __cdecl MNN::Tensor::stride(int)const " (_imp?stride@Tensor@MNN@@QEBAHH@Z) rÚfÚrencÚ dans la fonction "class std::vector<struct mlpdr::PlateInfo,class std::allocator > __cdecl mlpdr::ProposalNet(unsigned char *,int,int,int,float,float)" (?ProposalNet@mlpdr@@ya?AV?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@PEAEHHHMM@Z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: static class MNN::Interpreter * __cdecl MNN::Interpreter::createFromFile(char const *)" (_imp?createFromFile@Interpreter@MNN@@SAPEAV12@PEBD@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,float,float,float,float)" (??0MLPDR@mlpdr@@qeaa@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@Mmmm@Z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: __cdecl MNN::Interpreter::~Interpreter(void)" (_imp??1Interpreter@MNN@@qeaa@XZ) rÚfÚrencÚ dans la fonction "public: void * __cdecl MNN::Interpreter::scalar deleting destructor'(unsigned int)" (??_GInterpreter@MNN@@QEAAPEAXI@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: class MNN::Session * __cdecl MNN::Interpreter::createSession(struct MNN::ScheduleConfig const &)" (__imp_?createSession@Interpreter@MNN@@QEAAPEAVSession@2@AEBUScheduleConfig@2@@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: void __cdecl MNN::Interpreter::resizeSession(class MNN::Session *)" (__imp_?resizeSession@Interpreter@MNN@@QEAAXPEAVSession@2@@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: void __cdecl MNN::Interpreter::releaseModel(void)" (__imp_?releaseModel@Interpreter@MNN@@QEAAXXZ) rÚfÚrencÚ dans la fonction "public: virtual __cdecl mlpdr::MLPDR::~MLPDR(void)" (??1MLPDR@mlpdr@@UEAA@XZ) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: enum MNN::ErrorCode __cdecl MNN::Interpreter::runSession(class MNN::Session *)const " (__imp_?runSession@Interpreter@MNN@@QEBA?AW4ErrorCode@2@PEAVSession@2@@Z) rÚfÚrencÚ dans la fonction "public: class std::vector<struct mlpdr::PlateInfo,class std::allocator<struct mlpdr::PlateInfo> > __cdecl mlpdr::MLPDR::Detect_MaxFace(class cv::Mat const &,int,int)" (?Detect_MaxFace@MLPDR@mlpdr@@QEAA?AV?$vector@UPlateInfo@mlpdr@@V?$allocator@UPlateInfo@mlpdr@@@std@@@std@@AEBVMat@cv@@HH@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: class MNN::Tensor * __cdecl MNN::Interpreter::getSessionInput(class MNN::Session const *,char const *)" (__imp_?getSessionInput@Interpreter@MNN@@QEAAPEAVTensor@2@PEBVSession@2@PEBD@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: class MNN::Tensor * __cdecl MNN::Interpreter::getSessionOutput(class MNN::Session const *,char const *)" (__imp_?getSessionOutput@Interpreter@MNN@@QEAAPEAVTensor@2@PEBVSession@2@PEBD@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: void __cdecl MNN::Interpreter::resizeTensor(class MNN::Tensor *,class std::vector<int,class std::allocator<int> > const &)" (__imp_?resizeTensor@Interpreter@MNN@@QEAAXPEAVTensor@2@AEBV?$vector@HV?$allocator@H@std@@@std@@@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: __cdecl MNN::CV::Matrix::Matrix(void)" (__imp_??0Matrix@CV@MNN@@QEAA@XZ) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: void __cdecl MNN::CV::Matrix::setScale(float,float)" (__imp_?setScale@Matrix@CV@MNN@@QEAAXMM@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: void __cdecl MNN::CV::Matrix::postScale(float,float)" (__imp_?postScale@Matrix@CV@MNN@@QEAAXMM@Z) rÚfÚrencÚ dans la fonction "public: class std::vector<struct mlpdr::PlateInfo,class std::allocator<struct mlpdr::PlateInfo> > __cdecl mlpdr::MLPDR::Detect_MaxFace(class cv::Mat const &,int,int)" (?Detect_MaxFace@MLPDR@mlpdr@@QEAA?AV?$vector@UPlateInfo@mlpdr@@V?$allocator@UPlateInfo@mlpdr@@@std@@@std@@AEBVMat@cv@@HH@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: static class MNN::CV::ImageProcess * __cdecl MNN::CV::ImageProcess::create(struct MNN::CV::ImageProcess::Config const &,class MNN::Tensor const *)" (__imp_?create@ImageProcess@CV@MNN@@SAPEAV123@AEBUConfig@123@PEBVTensor@3@@Z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &,float,float,float,float)" (??0MLPDR@mlpdr@@QEAA@AEBV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@MMMM@Z) MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: __cdecl MNN::CV::ImageProcess::~ImageProcess(void)" (__imp_??1ImageProcess@CV@MNN@@QEAA@XZ) rÚfÚrencÚ dans la fonction "public: void * __cdecl MNN::CV::ImageProcess::
scalar deleting destructor'(unsigned int)" (??_GImageProcess@CV@MNN@@QEAAPEAXI@Z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: void __cdecl MNN::CV::ImageProcess::setMatrix(class MNN::CV::Matrix const &)" (_imp?setMatrix@ImageProcess@CV@MNN@@QEAAXAEBVMatrix@23@@z) rÚfÚrencÚ dans la fonction "public: __cdecl mlpdr::MLPDR::MLPDR(class std::basic_string<char,struct std::char_traits,class std::allocator > const &,float,float,float,float)" (??0MLPDR@mlpdr@@qeaa@AEBV?$basic_string@DU?$char_traits@D@std@@v?$allocator@D@2@@std@@Mmmm@Z)
MLPDR.cpp.obj : error LNK2019: symbole externe non rÚsolu "__declspec(dllimport) public: enum MNN::ErrorCode __cdecl MNN::CV::ImageProcess::convert(unsigned char const *,int,int,int,class MNN::Tensor *)" (_imp?convert@ImageProcess@CV@MNN@@qeaa?AW4ErrorCode@3@PEBEHHHPEAVTensor@3@@z) rÚfÚrencÚ dans la fonction "public: class std::vector<struct mlpdr::PlateInfo,class std::allocator > __cdecl mlpdr::MLPDR::Detect_MaxFace(class cv::Mat const &,int,int)" (?Detect_MaxFace@MLPDR@mlpdr@@qeaa?AV?$vector@UPlateInfo@mlpdr@@v?$allocator@UPlateInfo@mlpdr@@@std@@@std@@AEBVMat@cv@@hh@Z)
C:\Users\ProTechnologies\Downloads\light-LPR-master\lib-win32\MNN.lib : warning LNK4272: type d'ordinateur bibliothÞque 'x86' en conflit avec le type d'ordinateur cible 'x64'
....\lib\mlpdr.dll : fatal error LNK1120: 27 externes non rÚsolus
NMAKE : fatal error U1077: '"C:\Program Files\CMake\bin\cmake.exe"' : code retour '0xffffffff'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\nmake.exe"' : code retour '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\VC\Tools\MSVC\14.16.27023\bin\HostX64\x64\nmake.exe"' : code retour '0x2'
Stop.`