OS X Yosemiteをインストールしましたが、gcc 4.9.1コンパイラに大きな問題があります。誰かが私を助けてくれることを願っています。
プログラムをコンパイルしようとすると、警告メッセージが表示されます。
gcc: warning: couldn’t understand kern.osversion ‘14.0.0'
私はグーグルで検索して見つけました https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61407 パッチを適用しようとしています:
Sudo patch -p1 < /usr/local/bin/00-darwin-10.10.patch
gccフォルダー内:/usr/local/bin/gcc
と私はメッセージを受け取りました:
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x
|index dd45802..0db14d7 100644
|--- a/fixincludes/fixincl.x
|+++ b/fixincludes/fixincl.x
--------------------------
File to patch:
File to patch:
私はすでにgccを試しましたが、メッセージを受け取りました。
patching file gcc
Hunk #1 FAILED at 1.
Hunk #2 FAILED at 15.
Hunk #3 succeeded at 1274 with fuzz 2 (offset -7908 lines).
Hunk #4 FAILED at 1319.
Hunk #5 FAILED at 1548.
Hunk #6 FAILED at 2671.
patch: **** Can't rename file gcc to gcc.orig : Permission denied
私はSudo
で試してみましたが、私は受け取りました:
can't find file to patch at input line 5
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x
|index dd45802..0db14d7 100644
|--- a/fixincludes/fixincl.x
|+++ b/fixincludes/fixincl.x
--------------------------
File to patch:
私は間違ったフォルダにいますか?誰でも私を助けることができますか?
ソースからものをビルドするときに同様の問題が発生しました。これは、Yosemiteとxcode 6.1にアップグレードした後に、更新されたコマンドラインツールをインストールするのを忘れたためです。コマンドラインでこれを試してください:
xcode-select --install
これにより、コマンドラインツールがダウンロードおよびインストールされ、問題が解決する場合があります。
コンパイルする前に環境でMACOSX_DEPLOYMENT_TARGET=10.9
を設定した場合、共有オブジェクトのリンクは正しく機能するはずです。
homebrewを使用している場合は、単純に:
brew upgrade gcc
これで十分でした。シンボリックリンクは必要ありません。
export CC=/Applications/Xcode.app/Contents/Developer/usr/bin/gcc
その後、通常どおりコマンドを実行します。
これで問題が解決します:gccを/Applications//Xcode.app/Contents/Developer/usr/bin/gccにリンクします
cd /usr/local/bin
ln -s /Applications//Xcode.app/Contents/Developer/usr/bin/gcc gcc
使用しようとしているパッチは、GCCのソースコードにパッチを適用するためのものであり、コンパイル済みのバイナリにパッチを適用するために使用しようとしています。それは機能しません。
理論的には、プロセスは
ただし、新しいコピーをコンパイルするためにコンパイラを実行することはできないため、これを行うことはできません。 Catch-22!
Googleで「gcc yosemite」を検索すると、可能な解決策への参照が多数見つかりました。 リンクの説明をここに入力 。 Macの専門家ではないので、これらのソリューションの品質を判断することはできません。
また、Xcode 6.1およびGCC 5.0でYosemite(10.10.1)を実行中に、GFORTRANコンパイルで「kern.osversion `14.0.0 'を理解できませんでした」という警告が表示されます。ただし、コンパイラは機能する実行可能コードを生成し、正しく実行されるようです。たぶん、あなたは単に警告を無視することができますか?
この問題が発生し、Xcode cliツールをインストールしました(xcode-select --install
)、まだ問題がありました。 YosemiteからMojaveにアップグレードしましたが、古いバージョンのコンパイラをアンインストールするとうまくいきました。
brew uninstall Apple-gcc42
これが誰かを助けることを願っています!
XCodeコマンドラインツールの現在のバージョンが必要なようです。 Yosemiteのインストール後に最初に「make」と入力すると、XCodeコマンドラインツールがないことを示す警告とダイアログボックスが表示され、それらをインストールするかどうかを尋ねられました。私はそうしましたが、すべてがうまくいきました。
ただし、1人のユーザーはこのダイアログを取得せず、代わりに示されているエラーメッセージを取得しました。 「xcode-select --install」は機能しなかったため、古いコマンドラインツールとヘッダーファイルが残っているようです。
MACOSX_DEPLOYMENT_TARGET = 10.9ソリューションは彼のために働きました。ただし、コンパイルは非常に遅いように見えました。
リンクして問題を解決しました
export CC=/usr/local/Cellar/Apple-gcc42/4.2.1-5666.3/bin/gcc-4.2
export CC=/usr/local/Cellar/Apple-gcc42/4.2.1-5666.3/bin/gcc-4.2