I'm currently developing a C++ application using MFC using VS 2010, the problem is that when I try to compile the project for release (the debug compilation works and can run the program without failures) I get the following errors from the compiler after Searching for the libraries:
1> Finished searching libraries1>CropFullFrontal.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall std::_Pair_base<float,float>::_Pair_base<float,float>(struct std::_Pair_base<float,float> const &)" (__imp_??0?$_Pair_base@MM@std@@QAE@ABU01@@Z)
1>CropFullFrontal.obj : error LNK2001: unresolved external symbol "__declspec(dllimport) public: __thiscall std::pair<float,float>::pair<float,float>(struct std::pair<float,float> const &)" (__imp_??0?$pair@MM@std@@QAE@ABU01@@Z)
1>C:\projects\N\Release\N.exe : fatal error LNK1120: 2 unresolved externals
I've checked the code of CropFullFrontal (both the .cpp file and the .h file) and pair never appears. As this error is common I googled it and the most forums or topics about this error mention changing the Runtime Library to MD, as I already did this I have no idea of what could be wrong with my project. I cannot include the project because there are a lot of files and it even includes some not free frameworks, but I can include the vcxproj file:
<?xml version="1.0" encoding="utf-8"?><Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="ProjectConfigurations">
<ProjectConfiguration Include="Debug|Win32">
<Configuration>Debug</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
<ProjectConfiguration Include="Release|Win32">
<Configuration>Release</Configuration>
<Platform>Win32</Platform>
</ProjectConfiguration>
</ItemGroup>
<PropertyGroup Label="Globals">
<ProjectGuid>{2C70EA3D-4264-4996-A28E-895454CD31FB}</ProjectGuid>
<RootNamespace>N</RootNamespace>
<Keyword>MFCProj</Keyword>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<UseOfMfc>Dynamic</UseOfMfc>
<UseOfAtl>false</UseOfAtl>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<UseOfMfc>Dynamic</UseOfMfc>
<UseOfAtl>Dynamic</UseOfAtl>
<CLRSupport>false</CLRSupport>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
</ImportGroup>
<PropertyGroup Label="UserMacros" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<LinkIncremental>true</LinkIncremental>
<IncludePath>$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSdkDir)include;$(FrameworkSDKDir)\include;C:\projects\util\libxml;C:\Projects\util\BioMetrics\NBIS\commonbis\include;C:\Projects\util\BioMetrics\NBIS\nfiq\include;C:\Projects\util\BioMetrics\NBIS\mindtct\include;C:\Projects\util\BioMetrics\NBIS\an2k\include;C:\Projects\util\BioMetrics\NBIS\imgtools\include;c:\projects\util;c:\projects\util\iconv;C:\FVSDK_8_1_0\include;c:\projects\util\openssl\include;C:\projects\util\libhqldll\include</IncludePath>
<TargetName>NManager</TargetName>
<LibraryPath>$(VCInstallDir)lib;$(VCInstallDir)atlmfc\lib;$(WindowsSdkDir)lib;$(FrameworkSDKDir)\lib;C:\FVSDK_8_1_0\lib\x86_32\msc_9.0_crtdll_g;C:\projects\N\_test\caso2\sqlite-dll;C:\projects\N\lib</LibraryPath>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
<IncludePath>$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSdkDir)include;$(FrameworkSDKDir)\include;C:\Projects\util\BioMetrics\NBIS\commonbis\include;C:\Projects\util\BioMetrics\NBIS\nfiq\include;C:\Projects\util\BioMetrics\NBIS\mindtct\include;C:\Projects\util\BioMetrics\NBIS\an2k\include;C:\Projects\util\BioMetrics\NBIS\imgtools\include;c:\projects\util;c:\projects\util\iconv;c:\projects\util\openssl\include;C:\projects\util\libhqldll\include;C:\FVSDK_8_1_0\include</IncludePath>
<LibraryPath>C:\Program Files\Microsoft Visual Studio 10.0\VC\lib;C:\projects\N\lib;C:\projects\N\_test\caso2\sqlite-dll;C:\FVSDK_8_1_0\lib\x86_32\msc_9.0-ipp_crtdll;$(LibraryPath)</LibraryPath>
<ExcludePath>$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;$(WindowsSdkDir)include;$(FrameworkSDKDir)\include;$(MSBuildToolsPath32);$(VCInstallDir)atlmfc\lib;$(VCInstallDir)lib;</ExcludePath>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
<PrecompiledHeader>Use</PrecompiledHeader>
<WarningLevel>Level3</WarningLevel>
<Optimization>Disabled</Optimization>
<PreprocessorDefinitions>WIN32;_WINDOWS;_DEBUG;_UNICODE;UNICODE;%(PreprocessorDefinitions);__NBIS_JASPER__</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
<RegisterOutput>false</RegisterOutput>
<OutputFile>$(OutDir)NManager$(TargetExt)</OutputFile>
<AdditionalDependencies>wldap32.lib;rpcrt4.lib;libfrsdk-8.1.0d.lib;wsock32.lib;itc.libutild.lib;libcblasd.lib;libcifrad.lib;libfetd.lib;sqldlld.lib;libiheadd.lib;libimaged.lib;libioutild.lib;libjasperd.lib;libjpegbd.lib;libjpegld.lib;libmindtctd.lib;libmlpd.lib;libnfiqd.lib;libnd.lib;libnmancfgd.lib;librepositoriod.lib;libtiff.lib;libutild.lib;libwsqd.lib;sqlite3.lib</AdditionalDependencies>
<IgnoreSpecificDefaultLibraries>libcmtd.lib</IgnoreSpecificDefaultLibraries>
</Link>
<Midl>
<MkTypLibCompatible>false</MkTypLibCompatible>
<ValidateAllParameters>true</ValidateAllParameters>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</Midl>
<ResourceCompile>
<Culture>0x0c0a</Culture>
<PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<ClCompile>
<WarningLevel>Level3</WarningLevel>
<PrecompiledHeader>Use</PrecompiledHeader>
<Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
<PreprocessorDefinitions>WIN32;_WINDOWS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary>
<BasicRuntimeChecks>Default</BasicRuntimeChecks>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<RegisterOutput>true</RegisterOutput>
<OutputFile>$(OutDir)N$(TargetExt)</OutputFile>
<AdditionalDependencies>wldap32.lib;wsock32.lib;rpcrt4.lib;itc.libutil.lib;libcblas.lib;libcifra.lib;libfet.lib;sqldll.lib;libihead.lib;libimage.lib;libioutil.lib;libjasper.lib;libjpegb.lib;libjpegl.lib;libmindtct.lib;libmlp.lib;libnfiq.lib;libn.lib;libnmancfg.lib;librepositorio.lib;libtiff.lib;libutild.lib;libwsq.lib;sqlite3.lib;libfrsdk-8.1.0.lib</AdditionalDependencies>
<IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries>
<IgnoreSpecificDefaultLibraries>libcmt.lib;msvcrtd.lib;msvcprtd.lib;msvcmrtd.lib;msvcurtd.lib</IgnoreSpecificDefaultLibraries>
<AdditionalLibraryDirectories>
</AdditionalLibraryDirectories>
<ShowProgress>LinkVerboseLib</ShowProgress>
</Link>
<Midl>
<MkTypLibCompatible>false</MkTypLibCompatible>
<ValidateAllParameters>true</ValidateAllParameters>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</Midl>
<ResourceCompile>
<Culture>0x0c0a</Culture>
<PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(IntDir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ResourceCompile>
</ItemDefinitionGroup>
<ItemGroup>
<ResourceCompile Include="..\util\libutil.rc" />
<ResourceCompile Include="N.rc" />
</ItemGroup>
<ItemGroup>
<Library Include="lib\itc.libutild.lib" />
<Library Include="lib\liban2kd.lib" />
<Library Include="lib\libcblasd.lib" />
<Library Include="lib\libcifrad.lib" />
<Library Include="lib\libfetd.lib" />
<Library Include="lib\libhqld.lib" />
<Library Include="lib\libiheadd.lib" />
<Library Include="lib\libimaged.lib" />
<Library Include="lib\libioutild.lib" />
<Library Include="lib\libjasperd.lib" />
<Library Include="lib\libjpegbd.lib" />
<Library Include="lib\libjpegld.lib" />
<Library Include="lib\libmindtctd.lib" />
<Library Include="lib\libmlpd.lib" />
<Library Include="lib\libnfiqd.lib" />
<Library Include="lib\libnd.lib" />
<Library Include="lib\libnmancfgd.lib" />
<Library Include="lib\librepositoriod.lib" />
<Library Include="lib\libserialkeycpp.lib" />
<Library Include="lib\libtiff.lib" />
<Library Include="lib\libutild.lib" />
<Library Include="lib\libwsqd.lib" />
</ItemGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
</ItemGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
<ProjectExtensions>
<VisualStudio>
<UserProperties RESOURCE_FILE="N.rc" _x007B_8856F961-340A-11D0-A96B-00C04FD705A2_x007D_="CWebBrowser2" />
</VisualStudio>
</ProjectExtensions>
</Project>
Finally, I include some c++ standard libraries in the code so I believe the msvcprt.lib is included instead of only msvcrt.lib
I really appreciate if anybody can help me to solve this issue