compiler du C dans matlab - Divers - Programmation
MarshPosté le 18-01-2006 à 12:58:04
Salut.
J'ai besoin d'utiliser une fonction écrite en C dans un programme matlab (pour réduire les temps de calcul).
Mon matlab sous linux me le compile sans probleme avec la fonction "mex fichier.c".
Mais sous windows, ca merde. J'ai donc essayé de choisir le compilateur en tapant "mex -setup" mais les trois qu'il me propose ne résolvent pas mon probleme.
J'ai installé visual studio en pensant que ca permettrait à matlab d'aller chercher un autre compilateur C mais rien ne change.
J'ai cru comprendre que matlab va chercher la liste des compilateurs dans un fichier à lui et qu'ensuite il met à jour un autre fichier appelé mexopts.bat en donnant les caractéristiques du compilateur.
Moi je ne comprend rien à rien à tous ces machins et je voudrais savoir si quelqu'un a déja eu ce genre de problemes et s'il a trouvé une parade.
En moins long ce message n'aurait sans doute pas été assez clair... Désolé et merci pour ceux qui l'ont lu en entier.
PS : voile le message d'erreur renvoyé :
Citation :
>> mex idqint3.c idqint3.obj .text: undefined reference to '_round'
C:\LOIC\MATLAB7\BIN\WIN32\MEX.PL: Error: Link of 'idqint3.dll' failed.
Error using ==> mex Unable to complete successfully
Marsh Posté le 18-01-2006 à 12:58:04
Salut.
J'ai besoin d'utiliser une fonction écrite en C dans un programme matlab (pour réduire les temps de calcul).
Mon matlab sous linux me le compile sans probleme avec la fonction "mex fichier.c".
Mais sous windows, ca merde. J'ai donc essayé de choisir le compilateur en tapant "mex -setup" mais les trois qu'il me propose ne résolvent pas mon probleme.
J'ai installé visual studio en pensant que ca permettrait à matlab d'aller chercher un autre compilateur C mais rien ne change.
J'ai cru comprendre que matlab va chercher la liste des compilateurs dans un fichier à lui et qu'ensuite il met à jour un autre fichier appelé mexopts.bat en donnant les caractéristiques du compilateur.
Moi je ne comprend rien à rien à tous ces machins et je voudrais savoir si quelqu'un a déja eu ce genre de problemes et s'il a trouvé une parade.
En moins long ce message n'aurait sans doute pas été assez clair... Désolé et merci pour ceux qui l'ont lu en entier.
PS : voile le message d'erreur renvoyé :
>> mex idqint3.c
idqint3.obj .text: undefined reference to '_round'
C:\LOIC\MATLAB7\BIN\WIN32\MEX.PL: Error: Link of 'idqint3.dll' failed.
Error using ==> mex
Unable to complete successfully