25

正常にコンパイルおよびリンクするCocoaアプリがあります。それ以来、コードの一部を静的ライブラリに分割してから、戻ってそのlibMyLib.aライブラリを元のプログラムにリンクしようとしました。

リンカーエラーが発生します

Undefined symbols for architecture x86_64:
  "std::terminate()", referenced from:

私のメインプロジェクトに存在していたが、現在はライブラリに存在しているソースモジュールの1つを参照しています。

戻って、各コンパイラとリンカの設定を一致させて、どちらが異なるかを確認しようとしましたが、それを突き止めることができないようです。私の勘では、C STDとリンクしていて、C ++ STDが必要ですが、すべてが標準ライブラリでC99コンパイラを使用しています。

何か案は?

ありがとう!

4

1 に答える 1

41

libc++.dylib でリンクすると問題が修正されました

于 2013-12-09T15:43:43.947 に答える