Вы находитесь на странице: 1из 4

1

Por David Enrique Torres

Si se dispone de algn compilador de C/C++ es posible configurar a MATLAB para que lo utilice en lugar del que ya trae por default (el octavo de la lista). En este ejemplo se escoger el Lcc as:

Una vez terminada la configuracin se procede a crear el ejecutable. Si hay varias funciones, entonces slo se hace el ejecutable de la funcin principal (la que llama a las dems). Tambin es posible hacer ejecutables al mismo tiempo de funciones que no estn relacionadas entre s. Ejemplo: mcc B sgl funcion.m Otro ejemplo: mcc m funcion.m En ambos casos el resultado es el mismo. Se crean dos archivos *.c, un archivo *.ctf y un archivo *.exe. Otro ejemplo, con dos funciones:

2 mcc m funcion1.m funcion2.m Los archivos *.m deben ser de tipo funcin. No es posible hacer un ejecutable de un archivo de tipo guin (script). Para que el ejecutable funcione en una PC sin MATLAB: 1. Hay que copiar el MATLAB Component Runtime (MCR) en la PC sin MATLAB. Se encuentra en C:\MATLAB7\toolbox\compiler\deploy\win32. 2. Luego hay que instalar el MCR en alguna carpeta, por ejemplo C:\ Carpeta_de_MCR. 3. Despus hay que crear una variable de entorno de usuario que se llame Path y su valor debe ser C:\Carpeta_de_MCR\v70\runtime\win32. Eso se hace en Propiedades de Mi PC (clic derecho en Mi PC y luego clic en Propiedades). Luego un clic en Opciones Avanzadas y un clic en Variables de entorno. Despus se agrega una nueva variable de entorno de usuario. En las variables de sistema ya hay una que se llama Path, pero no hay que tocarla.

Si el programa incluye una toolbox como la Database, entonces hay que copiar sus clases de java a la carpeta C:\Carpeta_de_MCR\v70\java\jar\toolbox. El archivo original es un archivo comprimido y est en C:\MATLAB7\java\jar\toolbox. Esto es porque el MCR slo instal las siguientes: instruments, rptgencore, y testmeas. OPCIONAL: Hay que copiar un archivo *.m llamado pathdef.m. Este archivo contiene las rutas de los elementos que necesita el programa para funcionar. Se encuentra en C:\MATLAB7\toolbox\local. Se debe copiar en C:\ Carpeta_de_MCR\v70\toolbox\local y se debe modificar como sigue: Se borra el contenido de pathdef.m a partir de donde dice %%% BEGIN ENTRIES %%% hasta %%% END ENTRIES %%%. En MATLAB se digita list = depdir('mi_archivo')y se copia todo el listado entre %%% BEGIN ENTRIES %%% y %%% END ENTRIES %%%. Ahora hay que editarlo. Primero se sustituyen los C:\MATLAB7\ por $. Luego se sustituyen las plecas invertidas \ por plecas normales /. Estos cambios se pueden hace con el editor buscando y sustituyendo (usando los binoculares). Hay que eliminar de la lista los directorios de clases (contienen una @) y directorios privados (terminan con private) y dejar slo a los directorios padres. Finalmente antes terminar cada cadena de texto se deben agregar dos puntos, despus de cada lnea se agrega una coma y tres puntos suspensivos (por si no lo saban, la RAE dice que slo deben escribirse tres puntos suspensivos, y parece que la regla tambin aplica aqu). Y la ltima lnea que se agrega es la que contiene la ruta de dnde est el archivo *.exe que se desea ejecutar. Ejemplo: p = [... %%% BEGIN ENTRIES %%% '$toolbox/control/control:',...

4 '$toolbox/control/ctrlguis:',... '$toolbox/control/ctrlobsolete:',... '$toolbox/control/ctrlutil:',... '$toolbox/database/database:',... '$toolbox/lmi/lmictrl:',... '$toolbox/lmi/lmilab:',... '$toolbox/local:',... '$toolbox/matlab/codetools:',... '$toolbox/Ejecutable:',... %%% END ENTRIES %%% ... ]; p = [userpath,p]; En este caso el ejecutable est en C:\ Carpeta_de_MCR\v70\toolbox\Ejecutable, para simplificar las cosas. La ltima lnea ($toolbox/Ejecutable) es opcional, ya que si el ejecutable est en otra carpeta, por ejemplo en Mis Documentos, funciona bien. Y si no se agrega esa lnea y el ejecutable est en otra carpeta sigue funcionando bien. Ahora hay que copiar otro archivo *.m llamado matlabrc.m y que se encuentra tambin en C:\MATLAB7\toolbox\local, y que al igual que el archivo anterior se debe copiar en C:\Carpeta_de_MCR\v70\toolbox\local. Este archivo llama a pathdef.m y tal vez al archivo *.m que origin al ejecutable. Debe aadirse al final de su cdigo fuente: pathdef.m; mi_archivo.m; En realidad no es necesario copiar matlabrc.m ni pathdef.m, aunque The MathWorks s lo sugiere. Si estos archivos son removidos, el ejecutable sigue funcionando bien.

Referencia: http://www.mathworks.com/access/helpdesk_r13/help/toolbox/runtime/runtimeserver.html

Вам также может понравиться