matlab dynamic error C2371: 'char 16_t' : redefinition

Post Reply
mdv
Posts: 6
Joined: Wed Feb 22, 2012 12:37 pm

matlab dynamic error C2371: 'char 16_t' : redefinition

Post by mdv »

Hi all

I try to compile the latest openvibe release, but the building gets stuck with following error:

it seems there is a problem with type conversion. Did anyone encounter this before? or is it specific to our matlab version?

thanks,
maarten

==============


Configuring and building openvibe-plugins\matlab\trunc ...

-- The C compiler identification is MSVC
-- The CXX compiler identification is MSVC
-- Check for CL compiler version
-- Check for CL compiler version - 1600
-- Check if this is a free VC compiler
-- Check if this is a free VC compiler - no
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio
10.0/VC/bin/cl.exe
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio
10.0/VC/bin/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studi
o 10.0/VC/bin/cl.exe
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studi
o 10.0/VC/bin/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Found OpenViBE...
-- [ OK ] lib C:/souce_code/openvibe/trunc/lib/OpenViBE-dynamic.lib
-- Found OpenViBE-toolkit...
-- [ OK ] lib C:/souce_code/openvibe-toolkit/trunc/lib/OpenViBE-toolkit-dy
namic.lib
-- Found OpenViBE module System...
-- [ OK ] lib C:/souce_code/openvibe-modules/system/trunc/lib/OpenViBE-mod
ule-System-dynamic.lib
-- Found OpenViBE plugins global defines...
-- Found Matlab...
-- [FAILED] Third party lib libmex
-- [FAILED] Third party lib libmx
-- [FAILED] Third party lib libeng
-- [FAILED] Third party lib mclmcrrt
-- Configuring done
-- Generating done
-- Build files have been written to: C:/souce_code/local-tmp/openvibe-plugins/ma
tlab/trunc

Microsoft (R) Program Maintenance Utility Version 10.00.30319.01
Copyright (C) Microsoft Corporation. All rights reserved.

Scanning dependencies of target OpenViBE-plugins-matlab-dynamic
[ 50%] Building CXX object CMakeFiles/OpenViBE-plugins-matlab-dynamic.dir/src/bo
x-algorithms/tools/ovpCBoxAlgorithmMatlabFilter.obj
ovpCBoxAlgorithmMatlabFilter.cpp
c:\program files\matlab\r2010a\extern\include\matrix.h(330) : error C2371: 'char
16_t' : redefinition; different basic types
C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\INCLUDE\yvals.h(5
76) : see declaration of 'char16_t'
C:\souce_code\openvibe-plugins\matlab\trunc\src\box-algorithms\tools\ovpCBoxAlgo
rithmMatlabFilter.cpp(355) : warning C4244: 'argument' : conversion from 'const
OpenViBE::uint64' to 'mwSize', possible loss of data
C:\souce_code\openvibe-plugins\matlab\trunc\src\box-algorithms\tools\ovpCBoxAlgo
rithmMatlabFilter.cpp(357) : warning C4244: 'initializing' : conversion from 'co
nst OpenViBE::uint64' to 'OpenViBE::uint32', possible loss of data
C:\souce_code\openvibe-plugins\matlab\trunc\src\box-algorithms\tools\ovpCBoxAlgo
rithmMatlabFilter.cpp(360) : warning C4244: '=' : conversion from 'const OpenViB
E::uint64' to 'OpenViBE::float64', possible loss of data
C:\souce_code\openvibe-plugins\matlab\trunc\src\box-algorithms\tools\ovpCBoxAlgo
rithmMatlabFilter.cpp(457) : warning C4244: 'argument' : conversion from 'OpenVi
BE::float64' to 'const OpenViBE::uint64', possible loss of data
NMAKE : fatal error U1077: 'C:\PROGRA~2\MICROS~1.0\VC\bin\cl.exe' : return code
'0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 10.0
\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual Studio 10.0
\VC\BIN\nmake.exe"' : return code '0x2'
Stop.

An error occured during building process

lbonnet
Site Admin
Posts: 417
Joined: Wed Oct 07, 2009 12:11 pm

Re: matlab dynamic error C2371: 'char 16_t' : redefinition

Post by lbonnet »

Hi Maarten,

It seems like there is indeed a problem with the matlab box. the build process found matlab but not some other dependencies (libeng and stuff). As I only tested with matlab R2011a and sup, it's possible your R2010a version does not work with the box; never tested...

I suggest you disable the compilation of this box manually.
Modify win32-init_env_command.cmd and delete the line

Code: Select all

echo %OpenViBE_plugin_matlab% >> %OpenViBE_build_order%
near the end of file.

The Matlab box won't be compiled, but hopefully you will be able to build the software.

Have you got access to a newer version of Matlab to test ?

Laurent
Follow us on twitter >> openvibebci

Checkout my (old) blog for some OpenViBE tips & tricks : here !

eeg
Posts: 5
Joined: Tue Mar 08, 2011 6:34 am

Re: matlab dynamic error C2371: 'char 16_t' : redefinition

Post by eeg »

I have MATLAB 2007b and what I have found is that I can
compile the MATLAB filter with older version of OpenVIBE
(in this case, 0.9.0), but in the newest version, I get several
errors.

Post Reply