How can one get a 32 bit compiler environment with 64bit Matlab and Simulink Coder?

5 visualizaciones (últimos 30 días)
Hello,
I'm trying to write a template makefile that will produce 32-bit binaries on a 64 bit installation of Matlab. So far, I simply set CPU = i386 in the .tmf file, but it still tries to produce a 64-bit binary. I could also narrow down the problem to the compiler environment set up in the modelname.bat file (which is generated automatically).
Basically, Matlab 64 bit writes the first line as:
call "%VS100COMNTOOLS%..\..\VC\vcvarsall.bat" AMD64
and the only thing I need to do is remove AMD64 to make it work (but editing by hand is not an option since the whole thing should work by pushing the "Build" button inside Simulink).
So how can I get the Simulink Coder to omit this AMD64 in the generated .bat file???
Is there a specific value for COMPILER_TOOL_CHAIN that I can use in the TMF file? It seems that COMPILER_TOOL_CHAIN = vc implies AMD64 on a 64bit installation of Matlab...
Thanks in advance for any help on this subject!
Fritz Menzer

Respuesta aceptada

Fritz Menzer
Fritz Menzer el 18 de Jul. de 2012
We solved the problem by implementing a STF_wrap_make_cmd_hook.m function and different (appropriately modified) "setup_for_visual" functions, one for each supported Matlab release (our STF_wrap_make_cmd_hook.m function just checks the Matlab version and calls the corresponding setup_for_visual.m function).
For more information, refer to the "Key Files in the Target Folder" page of the Matlab documentation and have a look at the setup_for_visual.m file which is in the toolbox/rtw/rtw folder of your Matlab installation.
  1 comentario
Wojciech Przystas
Wojciech Przystas el 13 de Jun. de 2013
This solution unfortunately does not work with the (free) Microsoft Windows SDK 7.1 compiler. Does anyone got a suitable solution?
Thanks.

Iniciar sesión para comentar.

Más respuestas (1)

Zhen Gang
Zhen Gang el 12 de Jul. de 2012
I removed the "AMD64" manually, then run the "bat" file again, and a 32-bit dll was generated.
  1 comentario
Fritz Menzer
Fritz Menzer el 18 de Jul. de 2012
Well, I was hoping that I could avoid getting the AMD64 string in the first place or that there was a way to automate the modification of the .bat file... Manual editing is not an option unfortunately. We did find a way to solve the general problem of generating 32-bit binaries though (but that way needs to be adapted to each version of Matlab/Simulink...). I'll put an answer relating to it shortly.

Iniciar sesión para comentar.

Categorías

Más información sobre Simulink Coder en Help Center y File Exchange.

Productos

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by