web-dev-qa-db-ja.com

OS X Yosemiteのgcc 4.9.1-gcc:警告:kern.osversion「14.0.0」を理解できませんでした

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: 

私は間違ったフォルダにいますか?誰でも私を助けることができますか?

28
MMax

ソースからものをビルドするときに同様の問題が発生しました。これは、Yosemiteとxcode 6.1にアップグレードした後に、更新されたコマンドラインツールをインストールするのを忘れたためです。コマンドラインでこれを試してください:

xcode-select --install 

これにより、コマンドラインツールがダウンロードおよびインストールされ、問題が解決する場合があります。

31
jfraser

コンパイルする前に環境でMACOSX_DEPLOYMENT_TARGET=10.9を設定した場合、共有オブジェクトのリンクは正しく機能するはずです。

20
Maysam Torabi

homebrewを使用している場合は、単純に:

brew upgrade gcc
7
TomDunning

これで十分でした。シンボリックリンクは必要ありません。

export CC=/Applications/Xcode.app/Contents/Developer/usr/bin/gcc

その後、通常どおりコマンドを実行します。

6

これで問題が解決します:gccを/Applications//Xcode.app/Contents/Developer/usr/bin/gccにリンクします

cd /usr/local/bin
ln -s /Applications//Xcode.app/Contents/Developer/usr/bin/gcc gcc
4

使用しようとしているパッチは、GCCのソースコードにパッチを適用するためのものであり、コンパイル済みのバイナリにパッチを適用するために使用しようとしています。それは機能しません。

理論的には、プロセスは

  • GCCコンパイラのソースtarballをダウンロード
  • パッチを適用します
  • gCCをコンパイルする
  • コンパイルされたGCCをインストールします

ただし、新しいコピーをコンパイルするためにコンパイラを実行することはできないため、これを行うことはできません。 Catch-22!

Googleで「gcc yosemite」を検索すると、可能な解決策への参照が多数見つかりました。 リンクの説明をここに入力 。 Macの専門家ではないので、これらのソリューションの品質を判断することはできません。

3
harmic

また、Xcode 6.1およびGCC 5.0でYosemite(10.10.1)を実行中に、GFORTRANコンパイルで「kern.osversion `14.0.0 'を理解できませんでした」という警告が表示されます。ただし、コンパイラは機能する実行可能コードを生成し、正しく実行されるようです。たぶん、あなたは単に警告を無視することができますか?

2
Tim Cohn

この問題が発生し、Xcode cliツールをインストールしました(xcode-select --install)、まだ問題がありました。 YosemiteからMojaveにアップグレードしましたが、古いバージョンのコンパイラをアンインストールするとうまくいきました。

brew uninstall Apple-gcc42

これが誰かを助けることを願っています!

0
JPowell

XCodeコマンドラインツールの現在のバージョンが必要なようです。 Yosemiteのインストール後に最初に「make」と入力すると、XCodeコマンドラインツールがないことを示す警告とダイアログボックスが表示され、それらをインストールするかどうかを尋ねられました。私はそうしましたが、すべてがうまくいきました。

ただし、1人のユーザーはこのダイアログを取得せず、代わりに示されているエラーメッセージを取得しました。 「xcode-select --install」は機能しなかったため、古いコマンドラインツールとヘッダーファイルが残っているようです。

MACOSX_DEPLOYMENT_TARGET = 10.9ソリューションは彼のために働きました。ただし、コンパイルは非常に遅いように見えました。

0
darinbob

リンクして問題を解決しました

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
0