-1

10.6 でリリースされたプロジェクトがあります。かなり標準的な「デバッグ」および「リリース」スキームがあります。

カスタムバージョンが必要なクライアントのために、いくつかの新しい作業を行っています。私は Xcode 4.5.1 を使用しており、基本 SDK を 10.7 に設定していますが、下位互換性のために展開ターゲットを 10.6 に設定しています。

私が書いた新しいコードでは、最近 Xcode に追加された自動生成されたインスタンス変数を使い始めました (これが 4.4 か 4.5 かはわかりません)。クラスの実装内で _iVar 変数を使用して、プロパティの基になる iVar にアクセスすることがあります。

私のデバッグ スキームは、clinet のデバッグ バージョンを問題なくビルドします。

ただし、リリース スキームに切り替えると、自動生成されたインスタンス変数を参照すると、宣言されていない識別子エラーがスローされます。

デバッグ スキームには正しくても、リリース スキームには正しくない設定がいくつかあるはずです。私はビルド設定の専門家ではなく、その設定がどうなるかわかりません。誰か助けてくれませんか?

また、私を困惑させる別の問題があります。プロジェクトに新しいクラスを追加しました (これはリモート SVN リポジトリに保持されています)。新しいファイルにはプロジェクト ナビゲーターで「A」のマークが付けられ、次のコミットでリポジトリに追加されるようにフラグが立てられたことを示しています。

クラスの名前を変更することにしました。過去にソース管理下にあるファイルの名前を変更する際に問題があったため、ファインダーでファイルを複製し、それらの名前を新しい名前に変更して、プロジェクトに追加しました。次に、Xcode のプロジェクトから OLD ファイルを削除しました。ただし、ビルドすると、これらの古いファイルが見つからないという警告が表示されます。Xcodeのどこかに、削除するように指示したファイルへの参照が残っています。これらの参照はどこにあり、どのように削除すればよいですか? プロジェクトの「ソースのコンパイル」ビルド フェーズでは、新しいファイルが表示されますが、削除した古いファイルは表示されません。

助けてくれてありがとう、

ダンカン・チャンプニー

4

1 に答える 1

0

質問の最初の部分に対する答えを見つけましたが、良くありません。

問題は、Mac OS では、Objective C 2.0 が最新の Objective C ランタイムを必要とすることです。それには64ビットが必要です。

iOS では、最新の Objective C ランタイムがすべての OS バージョンで利用でき、Objective C 2.0 はいくつかの最近の iOS バージョンで利用できます。

Mac OS では、64 ビットのみの OS のバージョンは 10.8 のみです。OS 10.6 および 10.7 のインストールのデフォルトは 32 ビットであることは理解しています。

Objective C 2.0 の機能を使用するには、64 ビットのみをビルドする必要があります。つまり、マシンを 32 ビット モードで実行しているユーザーはアプリを使用できません。良くないね。

于 2012-11-01T19:26:33.090 に答える