質問: **<使用環境>** Windows10 64bit VSCode 1.33 表題の通りVSCodeとMinGWを使ってC++のビルド環境を構築しようとしているのですが MinGW周りの設定で問題が起きており何が原因か分からない為、 質問させて頂きます。 具体的には 1MinGW( mingw-get-setup.exe )をインストール 2Installation Managerで以下をインストール ・mingw32-base ・mingw32-gcc-g++ 3システム環境変数に以下を追加 ・C:¥MinGW¥bin ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/1bc0ee8244ea539f88891c277502074e.png) 4cmdでgcc -vで確認しようとしたところ以下エラーが出る ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/b8f89607ad055a49c4981aec7d43572d.png) 原因が分からない為、ご教授いただけたら幸いです。 説明等で不足等ありましたらご指摘ください。 また質問枠で恐縮ですがVSCode側の設定に関して過去にこの環境作成を経験された方で 参考にされたサイト、方法等あれば教えて頂きたいです。 宜しくお願い致します。 >2019.04.09 22:36 追記 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/cd1dc1a6897fbefe09847f683116165a.png)
回答: この問題の原因は、フォルダーの区切り記号の文字コードの歴史的経緯を知らないとなかなか理解が難しいと思います。このあたりのキーワードで検索すると、その手の情報が多く見つかると思うので、ご参照されてみてはどうでしょうか。 結論から言えば、質問に記された`C:¥MinGW¥bin`という文字列に用いられている円記号は、Windowsがフォルダーの区切り記号として認識する文字コードU+005Cではなく、「**円記号という文字**」専用に割り当てられた文字コードU+00A5で記述されているために、正しくパスと認識されていないのが原因です。U+005Cは、一般的な日本語キーボードであればBackspaceの左側にあるキーで入力することができます。逆に、U+00A5は(Windowsでは)キーボードから直接入力することはできないので、何かしら一手間かける必要があったのではありませんか?手間をかけた上に期待した結果が得られないのでは、踏んだり蹴ったりですね。 下図は、U+005Cをバックスラッシュで表示するフォントであるNoto Sans CJK JPをインストールし、ワードパッドでそのフォントを指定して作成したものです。上が質問者様がこの質問に記述されたものをコピーペーストしたもの、下が区切り記号にBack Spaceの左側にあるキーで入力したものです。この結果からも、質問者様が入力した円記号はU+005Aであったことがわかります。 ! Windowsのシステムフォントでは、U+005CもU+00A5も円記号として表示してしまうため、見分けがつきません。Microsoftも、ぼちぼちシステムフォントやMS系フォントでも、U+005Cはバックスラッシュに固定してもいいんじゃないかと思うんだけどなあ。予告して半年から1年くらいクッションを置けば、そう大した問題も起きないのでは・・・と言いたいところだけど、未だに大手ショッピングサイトでも価格表記の円記号にU+005Cを平気で使っているところもあるし、簡単なことではないのかな。