この link に示すように、コマンドラインツールを再インストールすることで、最終的に問題を解決しました。ご迷惑おかけして申し訳ありません!
OSX Mavericksにアップグレードしたばかりで、コンパイラーを動作させることができなくなりました。私はvim/sb2でmacportsのgcc48を使用しており、すべてが問題なく動作していました。今、私がインクルードするどのライブラリーも大量のエラーを出します。私はあまり経験がなく、何をすべきか、何を探すべきか分かりません。以前と同じように機能させたい。基本的な「hello world」プログラムをコンパイルするときの言い方は次のとおりです。
In file included from /opt/local/include/gcc48/c++/bits/postypes.h:40:0,
from /opt/local/include/gcc48/c++/iosfwd:40,
from /opt/local/include/gcc48/c++/ios:38,
from /opt/local/include/gcc48/c++/ostream:38,
from /opt/local/include/gcc48/c++/iostream:39,
from ceva.cpp:1:
/opt/local/include/gcc48/c++/cwchar:44:19: fatal error: wchar.h: No such file or directory
#include <wchar.h>
何か情報が必要な場合は教えてください。提供します。お待ちいただいてありがとうございます!
[2019年追加-Mojave/Catalina] XCode 10は、コマンドラインツールを使用しても、
/usr/include
のヘッダーの配置を削除しました。ヘッダーが必要な場合、Mojaveで利用可能な transitional package をインストールできます。このパッケージはカタリナにはありません。ヘッダーは、適切なリリースのSDK内にあります。
XCode 5/Mavericksは、ヘッダーが配置される場所のデフォルトを変更しました。
以前のバージョンのMac OS X/XCodeでは、ヘッダーは/usr/include
にありました。
古いリリースでgccをビルドすると、その場所からヘッダーが取得され、コードをビルドしようとしたときにヘッダーが検索されます。
問題は、ファイルがそこにないことです。それらは/Applications/Xcode.app/Contents/Developer
のどこかにあります。
スペックファイルをいじくり回して、一貫して再び機能させることができますが、最も簡単なことは、gccを再構築することです。
同様に言及したように、xcode-select --install
を使用してコマンドラインツールをインストールできます。これにより、/usr/include
のヘッダーを含む開発者ツールが再インストールされます。
オペレーティングシステムをアップグレードすると、環境の変更により他のエラーが発生するため、gccなどを再インストールする傾向があります。これは私が形成した習慣にすぎません。それは最良の習慣ではないかもしれませんが、私は多くの場合、私を苦痛から救いました。
[2017年追加]補足として、
command line tools
をインストールすると、ヘッダーも/usr/include
に配置されます。コマンドラインツールをインストールするコマンドはxcode-select --install
です。これにより、ヘッダーの場所を手動で指定しなくても、ほとんどのコンパイラを使用できます。
これは、Mac osx Mavericksで動作させる方法です。
オープンターミナル
タイプ-> xcode-select --install
インストールツールについて尋ねるポップアップウィンドウが表示されます。
インストールツールを選択
インストールが完了するまで待ちます
OS X MavericksでXCodeを手動で更新する方法は次のとおりです。
開発者サイトにアクセス http://developer.Apple.com
次に、Apple開発者向けのダウンロードに移動し、Mavericks用のコマンドラインツールインストーラーがあります。ここにリンクがあります(ただし、リンクを機能させるには開発者アカウントが必要です) http ://developer.Apple.com/downloads/index.action?q = xcode
MacOs Sierra 10.12.4を使用していますが、同じ問題が発生しました。私はそれを使ってそれを解決しました:
/usr/bin/gcc
私にとっての修正は、古い壊れたgccをアンインストールすることでした:
brew uninstall gcc@5
ビルド出力で/usr/local/Cellar/gcc@5
のようなパスに気づきましたが、gcc@8
もインストールされており、使用されるはずでした。