0

JDPlayer と JDComposer の 2 つのプロジェクトを含む Xcode ワークスペースがあります。JDComposer は、JDPlayer がリンクする必要がある静的ライブラリにコンパイルします。

JDComposer は正常にビルドされ、libJDComposer がビルド製品ディレクトリに表示されます。その後、JDPlayer も正常にコンパイルされますが、libJDComposer.a にリンクしようとすると、次の行に沿って多くの問題が発生します。

Undefined symbols for architecture x86_64:
"JDComposer::getSyncTypes(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&)", referenced from:
  JDPlayer::getSyncTypes(std::__1::vector<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, std::__1::allocator<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > > >&) in JDPlayer.o

libJDComposer.a を JDPlayer->Target->Build Phases->Link Binary With Libraries に追加しました。また、libJDComposer.a のパスを JDPlayer->Build Settings->Library Search Paths に追加しました。

libJDComposer.a には、libJDComposeriOS と libJDComposerOSX の 2 つのターゲットがあることに注意してください。JDPlayer は OSX プロジェクトであるため、libJDComposerOSX にリンクしようとしています。

何がうまくいかないのか誰にも分かりませんか?

4

0 に答える 0