jueves, 15 de diciembre de 2011

Archivos mex, Windows 7, Microsoft Visual C++ 2010 y Matlab R2011b

  • Problema: Error al compilar el fichero de ejemplo yprime.c en Matlab. 
  • Descripción: Si seguimos las instrucciones que nos dan en Mathworks para compilar un fichero programado en C (ver el siguiente enlace: http://www.mathworks.es/support/tech-notes/1600/1605.html#intro y concretamente el comando "mex yprime.c") es posible que obtengamos el siguiente mensaje de error:
LINK : fatal error LNK1104: cannot open file 'yprime.mexw64' 
C:\PROGRA~1\MATLAB\R2011B\BIN\MEX.PL: Error: Link of 'yprime.mexw64' failed.
  • El problema es:  La ubicación del fichero ejemplo yprime.c. A Matlab no le gustan los espacios que aparecen en la ruta "C:\Program Files\" (que observamos arriba como C:\PROGRA~1\).
  • Solución: Ubicaremos el fichero que deseamos compilar en una carpeta sin espacios en la ruta (por ejemplo c:\temp). Atención: en Windows 7 no va a servir ninguna carpeta en la que necesitemos permisos de administrador para escribir en ella (por ejemplo, c:\ no sirve). Luego en Matlab seleccionaremos dicha carpeta como "current folder" y ejecutaremos de nuevo el comando "mex yprime.c"
Si encontraste una solución a tu problema y ahorraste tiempo, ya me doy por satisfecho. También podrías invitarme a un café con una pequeña donación en Paypal. ¡Gracias!