CATIA-Systems / FMIKit-Simulink

Import and export Functional Mock-up Units with Simulink
Other
155 stars 50 forks source link

Errors C2065, C2223, C2198 #453

Closed gnestlinger closed 10 months ago

gnestlinger commented 10 months ago

Using FMIKit 3.1 and Matlab R2019b, I get the following errors for the attached model:

C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.h(27): message : Siehe vorherige Definition von "rtmGetU" [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\fmiwrapper.inc(36,1): warning C4005: "rtmGetBlockIO": Makro-Neudefinition [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.h(19): message : Siehe vorherige Definition von "rtmGetBlockIO" [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\fmiwrapper.inc(114,36): error C2065: "example_U": nichtdeklarierter Bezeichner [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\fmiwrapper.inc(114,48): error C2223: Der linke Teil von "->v" muss auf eine Struktur/Union zeigen [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(94,12): error C2198: "example_step": Nicht genügend Argumente für Aufruf. [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(194,36): error C2065: "example_M": nichtdeklarierter Bezeichner [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(194,36): warning C4047: "=": Anzahl der Dereferenzierungen bei "RT_MODEL_example_T *" und "int" unterschiedlich [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(243,18): error C2198: "example_initialize": Nicht genügend Argumente für Aufruf. [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(265,17): error C2198: "example_terminate": Nicht genügend Argumente für Aufruf. [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(277,24): error C2198: "example_terminate": Nicht genügend Argumente für Aufruf. [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(280,33): error C2065: "example_M": nichtdeklarierter Bezeichner [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]
C:\Users\User1\Documents\MATLAB\FMIKit-Simulink-3.1\grtfmi\fmi2Functions.c(280,33): warning C4047: "=": Anzahl der Dereferenzierungen bei "RT_MODEL_example_T *" und "int" unterschiedlich [C:\Users\User1\Desktop\demo\example_grt_fmi_rtw\example.vcxproj]

demo.zip

t-sommer commented 10 months ago

CodeInterfacePackaging needs to be set to Nonreusable function. This should happen automatically when grtfmi.tlc is selected and grtfmi_selectcallback.m is called (see https://github.com/CATIA-Systems/FMIKit-Simulink/blob/main/grtfmi/grtfmi_selectcallback.m#L19).