2

私のMatlabコーダーは、前回使用したとき(2か月前)は問題なくビルドしていましたが、それを使用してプロジェクトをビルドしようとすると、次のエラーが発生します。

\>> coder -build get_scores.prj     
Warning: 'perl: warning: Setting locale failed.    
perl: warning: Please check that your locale settings:    
LC_ALL = "en_GB",    
LANG = (unset)    
are supported and installed on your system.    
perl: warning: Falling back to the standard locale ("C").    
VSINSTALLDIR'    
exceeds MATLAB's maximum name length of 63 characters and has been truncated to    
'perl: warning: Setting locale failed.    
perl: warning: Please che'.     
\> In CompilerConfigurationFactory>CompilerConfigurationFactory.determineLocation at 275    
In CompilerConfigurationFactory>CompilerConfigurationFactory.process at 130    
In getCompilerConfigurations at 56    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\private\compilerman.p>parse_opts_file at 57    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\private\compilerman.p>compilerman at 15    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\private\emlckernel.p>emlckernel/getCompilerName at 148    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\private\emlckernel.p>emlckernel/finalizeProject at 711    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\private\emlckernel.p>emlckernel at 36    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\private\codeProject.p>codeProject/doit at 8    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\private\codeProject.p>codeProject at 13    
In C:\Program Files\MATLAB\R2011b\toolbox\coder\coder\emlcprivate.p>emlcprivate at 18     
The current MEX compiler '`<unknown>`' is not supported.    
Use mex -setup to select a supported compiler.    
Use help codegen for more information on using this command.    

mex -setupを数回実行し、Visual Studio(以前使用していて正常に機能していたもの)を選択し、ビルドコマンドを再実行しましたが、同じエラーが繰り返し発生します。また、「MATLABの最大名前長である63文字を超えて切り捨てられた」という部分は、MatlabがPerl警告を何らかの変数名として解釈していることを示しているようです。そこで何が起こっているのかわかりません。

Perlの警告が表示される理由もわかりません。LC_ALLは以前は設定されておらず、現在はen_GBですが、同じエラーが発生します。

これを修正するための任意の手順をいただければ幸いです。

4

1 に答える 1

1

わかりました、メッセージを注意深く見た後、Matlab が内部的に Perl を使用して変数名 VSINSTALLDIR を取得しようとしており、警告メッセージがそれをスローしていると推測しました。コマンドラインでPerlを実行して、警告がそこにも表示されることを確認しました。次に、ロケール エラーを修正する方法を検索しているときに (Google では、Linux および Mac システムに対してのみ解決策が提供されました)、このページで Perl の警告を単純に抑制する方法を見つけました。その後、上記のエラーはなくなりました。

于 2013-01-02T22:00:06.470 に答える