0

ここにある gmp-chudnovsky.c ファイルを xcode でコンパイルして実行しようとすると、次のエラーが表示されます。

Undefined symbols for architecture x86_64:
  "_fac_clear", referenced from:
      _main in main.o
  "_fac_compact", referenced from:
      _fac_remove_gcd in main.o
  "_fac_init", referenced from:
      _main in main.o
  "_fac_mul", referenced from:
      _bs in main.o
  "_fac_mul_bp", referenced from:
      _bs in main.o
  "_fac_resize", referenced from:
      _fac_remove_gcd in main.o
  "_fac_set_bp", referenced from:
      _bs in main.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

正しくコンパイルされている別の xcode プロジェクトにリンクしているため、gmp ライブラリが正しくインストールされていることはわかっています。なぜこれが起こっているのかについてのアイデアはありますか?

言い忘れていましたが、GMP のヘッダー ファイルとライブラリへのパスを追加し、その他のリンカー フラグの下に -lgmp フラグを追加しました。

4

1 に答える 1

0

解決済み:この回答を参照してください。

xcode は最初にデバッグ構成で実行され、最適化もインライン化も実行されないと思います。これは、どのinline関数も作成する必要があることを意味しますstatic

于 2012-12-27T11:10:46.653 に答える