필터 지우기
필터 지우기

libcpmt.lib(xthrow.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800' in nms_gpu_mex.o

조회 수: 13 (최근 30일)
I am trying to run the project here https://github.com/ShaoqingRen/faster_rcnn and I am getting an error when I run the function faster_rcnn_build. Can someone tell me what that error means and how I can resolve it ?
This is the output
Compiling nms_mex
Building with 'Microsoft Windows SDK 7.1 (C++)'.
MEX completed successfully.
Compiling nms_gpu_mex
nvcc --compile -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" -o nms_gpu_mex.o --machine 64 -I"C:\Program Files\MATLAB\R2014b/extern/include " -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\include" -I"\common\inc" "functions/nms/nms_gpu_mex.cu"
nms_gpu_mex.cu
mex -outdir bin nms_gpu_mex.o -L"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5\lib\x64" -lcudart
Building with 'Microsoft Windows SDK 7.1 (C)'.
Before all the error appears
Error using mex
libcpmt.lib(xthrow.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800' in nms_gpu_mex.o
LIBCMT.lib(new.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800' in nms_gpu_mex.o
LIBCMT.lib(typinfo.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800' in nms_gpu_mex.o
LIBCMT.lib(stdexcpt.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800' in nms_gpu_mex.o
LIBCMT.lib(frame.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800' in nms_gpu_mex.o
LIBCMT.lib(typname.obj) : error LNK2038: mismatch detected for '_MSC_VER': value '1600' doesn't match value '1800' in nms_gpu_mex.o
Creating library C:\Users\Haziq\Downloads\faster_rcnn-master\faster_rcnn-master\bin\nms_gpu_mex.lib and object
C:\Users\Haziq\Downloads\faster_rcnn-master\faster_rcnn-master\bin\nms_gpu_mex.exp
nms_gpu_mex.o : error LNK2019: unresolved external symbol fminf referenced in function "float __cdecl fmin(float,float)"
(?fmin@@YAMMM@Z)

답변 (1개)

James Tursa
James Tursa 2016년 10월 26일
편집: James Tursa 2016년 10월 26일
_MSC_VER is a value corresponding to the version of the Microsoft compiler that is being used. The 1600 is for Visual Studio 2010, and the 1800 is for Visual Studio 2013. So you are trying to link code that was compiled with the 2010 compiler with code that was compiled with the 2013 compiler. This version mismatch is causing the error. You might look at this link for a related discussion of potential fixes: http://stackoverflow.com/questions/19575747/error-lnk2038-mismatch-detected-for-msc-ver-value-1600-doesnt-match-valu

카테고리

Help CenterFile Exchange에서 C Shared Library Integration에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by