Matlab - Matlab/Simulink2014b en servidor linux remoto Problema gcc

   
Vista:

Matlab/Simulink2014b en servidor linux remoto Problema gcc

Publicado por Diego (3 intervenciones) el 26/10/2014 23:52:47
Buenas a todo/as:

Primeor me gustaria remarcar que soy muy novato en Simulink/Linux/... y segundo, quisiera describir mi entorno de trabajo: En mi ordenador personal tengo Windows8.1 y Matlab2014b. En un servidor GNU/Linux remoto de mi universidad tiene el Matlab2014a.

Mi problema viene cuando intento lanzar una simulacion con Simulink en dicho servidor ya que es mucho mas potente que mi ordenador personal. La simulacion incorpora bloques de tipo Level-2 M-File S-Function con su correspondiente S-Function name escrita en C y dentro de ese codigo C hay lineas con comentarias de la forma /*asdasd...*/ o tambien de la forma //asda ... (Repito que soy muy novato en todo esto...). Pues bien, más o menos, he deducido que matlab incorpora un compilador gcc para linux cuya version mas reciente es la 4.7 ¿me equivoco? y por otro lado el gcc del servidor GNU/Linux remoto de mi universidad tiene la version 4.9... Pues bien, si por linea de comando:
1º me conecto via ssh,
2º luego abro el matlab, y
3º dentro ya del matlab intento compilar las S-Functions con el comando >> mex function.nombre_de_la_funcion.c

me da errores del tipo:
-------------------
>> mex function.nombre_de_la_funcion.c
Building with 'gcc'.
Warning: You are using gcc version '4.9.1'. The version of gcc is not
supported. The version currently supported with MEX is '4.7.x'. For a list of
currently supported compilers see:
http://www.mathworks.com/support/compilers/current_release.
In file included from /home/carpeta1/carpeta2/simulacion_Model/nobre_de_la_funcion.c:3:0:
/home/carpeta1/carpeta2/simulacion_Model/nobre_de_la_funcion.c: In function ‘mdlInitializeConditions’:
/share/matlab-home/matlab.r2014a/simulink/include/simstruc.h:7208:11: warning: initialization from incompatible pointer type
(S)->work.rWork /* (real_T *) */
^
/home/carpeta1/carpeta2/simulacion_Model/nobre_de_la_funcion.c:85:23: note: in expansion of macro ‘ssGetRWork’
real32_T *rwork = ssGetRWork(S);
^
/home/carpeta1/carpeta2/simulacion_Model/nobre_de_la_funcion.c: In function ‘mdlOutputs’:
/share/matlab-home/matlab.r2014a/simulink/include/simstruc.h:7208:11: warning: initialization from incompatible pointer type
(S)->work.rWork /* (real_T *) */
^
/home/carpeta1/carpeta2/simulacion_Model/nobre_de_la_funcion.c:99:30: note: in expansion of macro ‘ssGetRWork’
real32_T *rwork = ssGetRWork(S);
^
Error using mex
/home/carpeta1/carpeta2/simulacion_Model/nobre_de_la_funcion.c: In function
‘dll_output_insert’:
/home/carpeta1/carpeta2/simulacion_Model/nobre_de_la_funcion.c:98:36: error: expected
expression before ‘/’ token
real32_T shift_code_index = 0; //*/ integer number in chips*/

-----------------------------

Y no podia lanzar la simulacion..
Entonces he cambiado las lineas con comentarios del tipo //asda... por comentarios de tipo /*asd....*/ y aunque me seguia apareciendo algun warning si que me ha dejado simular... Mi pregunta es si puedo de alguna forma evitar el tener que cambiar siempre los comentarios o alguna otra forma para compilar sin problemas...

Gracias y espero que me hayan entendido porque no es fácil de explicar...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder