Cコンパイラに「Vi​sualStudio​2017」を指定でき​ない

조회 수: 23 (최근 30일)
koji fukumoto
koji fukumoto 2019년 9월 19일
댓글: koji fukumoto 2019년 9월 19일
使用しているMATLABは「R2018a」で、
「Microsoft Visual Studio Premium 2012」と「Microsoft Visual Studio Professional 2017」がインストール済みです。
mex -setup」を実行すると、以下のように表示され、VS2017が選択肢に現れません。
>> mex -setup
MEX は C 言語のコンパイルに 'Microsoft Visual C++ 2012 (C)' を使用するよう設定されています。
警告: MATLAB C および Fortran API は、2^32-1 を超える要素のある MATLAB
変数をサポートするように変更されました。今後、新しい API
利用するためのコードの更新が必要になります。
詳細については、次を参照してください:
https://www.mathworks.com/help/matlab/matlab_external/upgrading-mex-files-to-use-64-bit-api.html
別の C コンパイラを選択するには、次のいずれかを選択してください。
MinGW64 Compiler (C) mex -setup:'C:\Program Files\MATLAB\R2018a\bin\win64\mexopts\mingw64.xml' C
Microsoft Visual C++ 2012 (C) mex -setup:C:\Users\********\AppData\Roaming\MathWorks\MATLAB\R2018a\mex_C_win64.xml C
別の言語を選択するには、次のいずれかを選択してください。
mex -setup C++
mex -setup FORTRAN
>>
より、R2018aにおいてVS2017はサポートされている認識ですが、どのようにすればVS2017をコンパイラとして指定できますか?
(理由あって、R2018aからのバージョンアップは考えておりません)
よろしくお願い致します。

채택된 답변

Kazuya
Kazuya 2019년 9월 19일
こちらに似た現象に関する質問がありました。
原因はわからないままですが、Visual Studio 側の再インストールで解決しています。
mex -setup -v
でもしかしたら何かわかるかもしれませんが・・。
  댓글 수: 1
koji fukumoto
koji fukumoto 2019년 9월 19일
-vで詳細を見てみると、レジストリ情報を元に
「D:\Program Files (x86)\Microsoft Visual Studio\2017\Community\」
を検索しておりました。VS2017は実際には
「D:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\」
にインストールされております。
VS2017の「Professional」をインストールする前に、「Community」をインストールしていたのですが、Communutyの試用期間が終了した為にこれをアンインストールし、新たにProfessionalをインストールした次第です。
その際、レジストリがうまく更新できていなかったようです。
(そういえば、Communityアンインストール時にエラーが出ていたのを思い出しました…)
レジストリ情報を正しいパスに更新することで、コンパイラの変更ができるようになりました。
迅速なご対応、ありがとうございました!

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 MATLAB Compiler에 대해 자세히 알아보기

제품


릴리스

R2018a

Community Treasure Hunt

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

Start Hunting!