Red de conocimiento informático - Material del sitio web - Cómo utilizar el compilador de Visual C++ 2010 en MATLAB R2010a

Cómo utilizar el compilador de Visual C++ 2010 en MATLAB R2010a

1. Instale el parche VS2010MEXSupport.zip

Dado que MATLAB R2010a se lanzó antes que VS2010, el compilador VC++2010 no se puede reconocer en esta versión. Sin embargo, las versiones posteriores a R2010a no deberían tener este problema.

Descomprima el paquete del parche y coloque los archivos en la carpeta D:Program FilesMATLABR2010abinwin32mexopts.

2. Instale el compilador VC++ 2010 en MATLAB

Abra Matlab e ingrese mex -setup en la ventana de comandos

>> mex -setup

Elija su compilador para crear archivos de interfaz externa (MEX):

¿Le gustaría que mex localice los compiladores instalados [y]/n?n? (Asegúrese de elegir n)

Seleccione un compilador:

[1] Intel C++ 11.1 (con el vinculador Microsoft Visual C++ 2008 SP1)

[2] Intel C++ 9.1 (con el vinculador Microsoft Visual C++ 2005 SP1) ) )

[3] Intel Visual Fortran 11.1 (con el vinculador Microsoft Visual C++ 2008 SP1)

[4] Intel Visual Fortran 11.1 (con el vinculador Microsoft Visual C++ 2008 Shell)

[5] Intel Visual Fortran 10.1 (con vinculador Microsoft Visual C++ 2005 SP1)

[6] Lcc-win32 C 2.4.1

[7] Microsoft Visual C++ 6.0

[8] Microsoft Visual C++ 2005 SP1

[9] Microsoft Visual C++ 2008 Express

[10] Microsoft Visual C++ 2008 SP1

[11] Microsoft Visual C++ 2010

[12] Microsoft Visual C++ 2010 Express

[13] Abrir WATCOM C++

[0] Ninguno

Compilador:12

Tenga en cuenta que si selecciona n, no aparecen tantas opciones del compilador y VC++ 2010 ni siquiera aparece. No entre en pánico, elija 0 en este momento, que es Ninguno.

Compilador: 0

mex: No se seleccionó ningún compilador. No se realizó ninguna acción.

Advertencia: La API de MATLAB C y Fortran ha cambiado para admitir MATLAB.

variables con más de 2^32-1 elementos. En un futuro próximo

se le pedirá que actualice su código para utilizar la nueva

API que puede encontrar. más información sobre esto en:

/support/solutions/en/data/1-5C27B9/?solution=1-5C27B9

La compilación con la opción -largeArrayDims habilita la nueva API.

Luego ingresa mex -setup nuevamente en la ventana de comandos.

>> mex -setup

Elija su compilador para crear archivos de interfaz externa (MEX):

¿Le gustaría que mex localice los compiladores instalados [y] /n?n ? (Asegúrese de seleccionar n)

En este momento se enumerarán muchos compiladores, incluido VC++2010. De lo contrario, repita el proceso anterior varias veces. Por supuesto, la premisa es que se debe instalar VS2010; de lo contrario, no importa cuántas veces lo repita, no podrá encontrar el compilador VC++2010.

Después de enumerar el compilador VC++2010, creo que no habrá ningún problema para todos sobre qué hacer a continuación.

3. error C2371: 'char16_t': redefinición; diferentes tipos básicos

En programación mixta, pueden ocurrir los siguientes errores:

C:Microsoft Visual Studio 10.0VCINCLUDEyvals.h(576): error C2371: 'char16_t': redefinición; diferentes tipos básicos

C:Matlabr2010aexternincludematrix.h(330): consulte la declaración de 'char16_t'

La razón es que yvals.h en VS2010 agrega la definición de char16_t, y Matrix.h de Matlab también contiene la definición de char16_t, por lo que incluir estos dos archivos de encabezado al mismo tiempo provocará el error de definir char16_t repetidamente.

No hay absolutamente ninguna necesidad de modificar estos dos archivos de encabezado (en caso de que la modificación cause algunos problemas en el futuro), solo necesita incluir yvals.h antes de incluir Matrix.h. Por ejemplo: #include?

#if?(_MSC_VER?>=?1600)

#define?__STDC_UTF_16__

#endif

#include?"mex.h"

mex.h incluye matriz.h. Esto requiere que sepamos si el archivo de encabezado incluido contiene Matrix.h.