質問: ### 前提・実現したいこと Matlab上でMeCabを使って形態素解析がしたいです。 Web上でやり方を探し、MeCabは32bitである為、64bitに対応したdllファイルを生成する必要があり、 VS2015の開発者コマンドプロンプトを使って生成をすることを試みています。 (参考にしたサイト) http://www.ipentec.com/document/document.aspx?page=mecab-compile-for-x64-windows-use-x64-windows http://qiita.com/h_kabocha/items/5bee9e9b852aed11411b ### 発生している問題・エラーメッセージ srcフォルダ内のコードを参考のサイトの通りに書き換え、 Makeコマンドを実行すると、下記のエラーが出て、dllファイルが生成できません。 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/d036ce70ffc968744d2a5958f0dd7601.png) feature_index.cpp 'cl.exe' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 NMAKE : fatal error U1077: 'cl.exe' : リターン コード '0x1' Stop. ### 該当のソースコード Make.bat ### 試したこと コマンドプロンプトを管理者として実行するなどを試しましたが、同様のエラーが生じています。 ### 補足情報(言語/FW/ツール等のバージョンなど) Windows10 Visual Studio 2015 mecab-python-0.996.tar.gz
回答: cl.exeは、コンパイラですね。 > > VS2015の開発者コマンドプロンプトを使って生成をすることを試みています。 > > > とのことですが、コンパイラ(cl.exe)へのパスが通っていないと考えられます。 環境変数PATHにcl.exeが格納されているディレクトリを追加して、再実行してみてください。 * cl.exeが格納されているディレクトリの確認方法 ``` dir /b /s \cl.exe ``` * 環境変数PATHへのcl.exeが格納されているディレクトリの追加方法 ``` set PATH=%PATH%;"" (※1) ``` ※1 dirコマンドではcl.exeも合わせて表示されますが、それを除いたディレクトリ名のみを指定する。 (例) C:\Program Files\VS2015\bin\cl.exeの場合は ``` set PATH=%PATH%;"C:\Program Files\VS2015\bin" ``` VS2015のコンパイラやリンケージエディタを実行するためにはPATH以外にも環境変数を設定する必要が有るかも知れません。昔は「vcvars32.bat」等のバッチファイルを実行していました。 こちらも参考にしてください。 How to: Set Environment Variables for the Visual Studio Command Line - Microsoft Developer Network