compiling a 32-bit C Shared Library

조회 수: 6 (최근 30일)
John Anderson
John Anderson 2018년 5월 24일
댓글: Fahimeh Dehghandehnavi 2022년 3월 4일
Hi all,
I need to compile a 32-bit C shared library to deploy some Matlab Code. I have installed Matlab 2015b on a 32-bit Machine running windows 10. However, I am having trouble locating a compatible 32-bit compiler. Does anyone have any pointers to a (preferably) free compiler that would be recognized by this version of Matlab. I have tried searching for the recommended compilers given under https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/support/sysreq/files/SystemRequirements-Release2015b_SupportedCompilers.pdf specifically "Microsoft Windows SDK 7.1 Available at no charge; requires .NET Framework 4." but to no avail. Any tips would be much appreciated.
Best wishes,
John

채택된 답변

Walter Roberson
Walter Roberson 2018년 5월 24일
SDK 7.1 is your only option. It is, however, not easy to install on Windows 10. You could experiment with the work-around described at https://social.msdn.microsoft.com/Forums/sqlserver/en-US/1de7c9b4-1feb-4c98-b426-f7f02cbafa99/windows-sdk-71-on-windows-10?forum=windowssdk
  댓글 수: 4
John Anderson
John Anderson 2018년 5월 25일
Hi all,
So the installation I had attempted of Windows SDK 7.1 has a known problem in that the compilers are sometimes uninstalled during the installation. This requires you to run this patch
https://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=4422
However, this fails unless .NET 4.7.2 is installed. I had thought I had already done this but must have been in a previous life. Anyway I installed from here
https://www.microsoft.com/net/download/thank-you/net472?survey=false
And then successfully installed the patch.
Now Matlab detects the alternative compiler.
mex -setup
To choose a different C compiler, select one from the following:
lcc-win32 mex -setup:'C:\Program Files\MATLAB\R2015b\bin\win32\mexopts\lcc-win32.xml' C
Microsoft Windows SDK 7.1 (C) mex -setup:C:\Users\John\AppData\Roaming\MathWorks\MATLAB\R2015b\mex_C_win32.xml C
And I am able to compile a 32-bit C Shared library ... finally.
Thanks again for your initial tip Walter.
Best wishes,
John
Fahimeh Dehghandehnavi
Fahimeh Dehghandehnavi 2022년 3월 4일
Thank you Walter! This workaround solved my problem too!

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

yalin kou
yalin kou 2018년 10월 7일
We have a same trouble!

카테고리

Help CenterFile Exchange에서 C Shared Library Integration에 대해 자세히 알아보기

제품


릴리스

R2015b

Community Treasure Hunt

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

Start Hunting!

Translated by