Mac OS X Snow Leopard で Qt と Poco を使用して小さなデスクトップ アプリケーションを作成しています。
Qt は正常に動作しますが、Poco とのリンクを開始すると、次の警告が表示されます。
ld: warning: in /Developer/SDKs/MacOSX10.6.sdk/usr/local/lib/libPocoFoundation.8.dylib, file is not of required architecture
また、10.5 SDK に対してリンクすると、次のようになります。
ld: warning: in /Developer/SDKs/MacOSX10.5.sdk/usr/local/lib/libPocoFoundation.8.dylib, file is not of required architecture
これを解決する方法に関するヒントはありますか?
解決しました!
これが私の回避策です(私はPocoフォーラムにも投稿しました):
問題は、アーキテクチャが指定されていない場合、Snow Leopard のデフォルトが 64 ビットであるのに対し、古いバージョンの OS のデフォルトは 32 ビットであることです。Poco ビルド システムでは、Darwin 構成ファイルでアーキテクチャが指定されていないため、32 ビットが選択されます。私の解決策は、Darwin_x86_64 構成ファイルを Darwin ファイルにコピーし、「x86_64」のテキスト インスタンスを「i386」に置き換えることでした。これにより、32 ビット ビルドが強制されます。
ややハックな解決策ですが、よりクリーンな方法で実行できるかどうか教えてください...