简体   繁体   中英

Model acceleration in Matlab-Simulink (Mac OSX)

I get this build error for a demo example in Simulink for model acceleration and Model referencing technique. I use Matlab R2013b in Mac OSX 10.9.5 and use Xcode 6.2/Clang++ as my C/C++ compiler. The error seems to be due to a missing/unknown type char16_t. The similar issue was resolved by using CFLAGS -Dchar16_t=UINT16_T for Matlab compiler for Mac OSX . I don't have issue with matlab compiler, but get the build error with compilation of simulink models (ie in sbuild function). Any clue how to resolve this build error?

### Build procedure for model: 'sldemo_mdlref_counter' aborted due to an error.
### Model reference SIM target (sldemo_mdlref_counter_msf.mexmaci64) for model sldemo_mdlref_counter is out of date because sldemo_mdlref_counter_msf.mexmaci64 does not exist.
### Updating model reference SIM target for model: sldemo_mdlref_counter
xcrun clang -arch x86_64 -c -fno-common -fexceptions     -O0 -DNDEBUG -DMODEL=sldemo_mdlref_counter -DNUMST=1 -DNCSTATES=0 -DUNIX -DMAT_FILE=0 -DINTEGER_CODE=0 -DONESTEPFCN=0 -DTERMFCN=1 -DHAVESTDIO -DMULTI_INSTANCE_CODE=0 -DCLASSIC_INTERFACE=0 -DMDL_REF_SIM_TGT=1 -I. -I../../.. -I/Applications/MATLAB_R2013a.app/extern/include -I/Applications/MATLAB_R2013a.app/simulink/include -I/Applications/MATLAB_R2013a.app/rtw/c/src -I/Applications/MATLAB_R2013a.app/rtw/c/src/ext_mode/common -I. -I/Users/santanusarma/Dropbox/M.TECH\ project/code/model     -I../../../slprj/sim/_sharedutils   "sldemo_mdlref_counter.c"
In file included from sldemo_mdlref_counter.c:2:
In file included from ./sldemo_mdlref_counter_capi.h:4:
In file included from ./sldemo_mdlref_counter.h:4:
In file included from /Applications/MATLAB_R2013a.app/rtw/c/src/rtw_modelmap.h:33:
In file included from ../../../slprj/sim/_sharedutils/rtwtypes.h:13:
/Applications/MATLAB_R2013a.app/extern/include/tmwtypes.h:819:9: error: unknown type
      name 'char16_t'
typedef char16_t CHAR16_T;
        ^
1 error generated.
gmake: *** [sldemo_mdlref_counter.o] Error 1

### Build procedure for model: 'sldemo_mdlref_counter' aborted due to an error.
#include <stdint.h>

is one way to get a declaration of char16_t . If you can't modify the code then you could use a forced include of that file (check compiler's documentation for what its option for forced include is).

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM