私は自分のプロジェクトで c++0x/c++11 の機能、特にコード ブロックと共有ポインターを多用しています。OS を 10.8 Mountain Lion にアップグレードしたとき (編集: 10.7 から)、Xcode のアップグレードを余儀なくされました。Xcode をアップグレードすると、次のエラーが発生するため、10.6 システムに配置するために C++ プロジェクトをコンパイルできなくなりました。
clang: error: invalid deployment target for -stdlib=libc++ (requires Mac OS X 10.7 or later)
Apple は、開発者に Snow Leopard のサポートを許可しないことで、人々にアップグレードを強制しようとしているようです。これは私を怒らせます。アーゴッ!!!
私に何ができる?
編集:いくつかのコメントを行ったり来たりした後、10.6 にはシステム libc++ ライブラリが同梱されていないことを明確にする必要があります。その結果、10.6 デプロイメント用の libc++ プロジェクトをビルドできるだけでは十分ではありません。また、10.6 ディストリビューションに libc++ バイナリを含めるか、それらに静的にリンクする必要があります。ですから、私はすでにそれを行っているという前提で続けましょう。
更新 1:この質問は、もともと Xcode 4.5.2 (質問が行われた時点での最新バージョン) で使用することを目的としていました。その後、Xcode 4.6.3 にアップグレードし、それを反映するように質問と回答を更新しました。
更新 2: Xcode 5.0.2 にアップグレードしました。以下の選択された回答にリストされている手法は、引き続き期待どおりに機能します。
更新 3:それ以来、Xcode 5.1 にアップグレードしました。以下の回答に記載されている手法は、このバージョンではまだ機能しません!
更新 4: Xcode 6.0.1 にアップグレードしました。以下の選択された回答にリストされている手法は、再び機能しているようです。
更新 5: Xcode 7.1.1 にアップグレードしました。以下の選択された回答にリストされている手法は、重要な注意点が 1 つありますが、再び機能しているようです。オープンソースの LLVM バージョンではサポートされていないため (サポートすべきではないため)、AppThinningに使用されるビットコーディングを無効にする必要があります。そのため、10.6 と tvOS/watchOS の両方でコンパイルするには、オープン ソースと Apple LLVM の clang を切り替える必要があります (これらの OS にはビットコーディングが必要なため)。