1

私が抱えている問題は、gcc(およびファミリ)が適切に設定されていないように見えることです。Xcodeを(アプリストアから)インストールしたばかりの10.7.4マシンがあります。私はこのマシンでこれまでの開発を行っていません。

Xcodeでの作業は正常に機能しているようです。問題なくビルドしてコンパイルできます。ただし、gccコマンドラインを実行しようとすると失敗します。

まず、私はgccが私の道を進んでいませんでした...大したことではありません。私はそれを見つけて、次のように実行しました:

/Applications/Xcode.app/Contents/Developer/usr/bin/gcc -dynamiclib -fno-common -o s.dylib s.c

(私はいくつかの関数を含むlibに取り組んでいます...)。とにかく、失敗します。

s.c:1:19: error: stdio.h: No such file or directory
s.c:2:20: error: stdlib.h: No such file or directory
s.c:3:20: error: string.h: No such file or directory

サプライズ!ええと、私は自分のマシンでstdio.hを検索しましたが、どこにも見つかりません。私はOSXゲームから少し離れているので、何かが足りないと思います-

基本的にはXcodeを使い続けたいのですが、すべての依存関係(.h)を正しい場所に置いてコマンドラインでC / C ++/etcをビルドできるようにしたいのです。

何かご意見は?

4

2 に答える 2

2

コマンド ラインからコンパイラを実行するには、コマンド ライン ツール パッケージと xcrun の 2 つの主な方法があります。

xcrunたまにこれが必要な場合に特に適しています。sudo の場合と同様に、最初に「xcrun」を付けるだけです。

xcrun gcc -dynamiclib -fno-common -o s.dylib s.c

これにより、gcc の正しいバージョンが検出され、必要なディレクトリなどが設定されます。特定の SDK を で指定できます--sdk

これを頻繁に行う場合は、コマンド ライン ツール パッケージをダウンロードしてインストールします ([Xcode] > [Open Developer Tool] > [More Tools...]。[Preferences] > [Downloads] でも利用できる場合があります)。これにより、すべての完全なコピーが /usr にインストールされます。

于 2012-08-21T03:02:42.127 に答える
0

10.8 を使用している場合、おそらく xcrun では十分ではありません。clang のドキュメントを調べると、ライブラリが標準の場所ではなく Xcode 内にあるため、システム ルートを含める必要があることがわかりました。

使用:

xcrun gcc -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk

また:

xcrun clang -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.8.sdk
于 2013-11-09T07:41:47.060 に答える