将问题与GMP和Xcode联系起来

时间:2016-03-16 20:13:28

标签: c++ xcode cryptography gmp

我正在尝试运行一个C ++项目,该项目也依赖于PBC(https://crypto.stanford.edu/pbc/)和GMP(https://gmplib.org)。我在/ usr / local /目录中安装了PBC和GMP。对于这个项目,我手动添加了PBC(pbc-0.5.14)和GMP(gmp-6.1.0)库(我将这些库拖到我的项目中)。

当我在Xcode(版本7.2)中将-lgmp -lgmpxx标志添加到其他链接器标志时,我得到了这个:

ld: library not found for -lgmp
clang: error: linker command failed with exit code 1 (use -v to see invocation)

当我在没有其他链接器标志的情况下构建(和清理)时,我得到了:

Undefined symbols for architecture x86_64:
  "_pairing_clear", referenced from:
      Member::~Member() in member.o
      Manager::~Manager() in manager.o
      Verifier::~Verifier() in verifier.o
  "_pairing_init_set_str", referenced from:
      Member::Member() in member.o
      Manager::Manager() in manager.o
      Verifier::Verifier() in verifier.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

有没有人知道如何解决此问题或任何建议? 感谢。

1 个答案:

答案 0 :(得分:0)

在我的Ubuntu 15.10(64)上,libgmp已安装到

> /usr/lib/i386-linux-gnu/libgmp.so.10
> /usr/lib/i386-linux-gnu/libgmp.so.10.2.0
> /usr/lib/i386-linux-gnu/openssl-1.0.0/engines/libgmp.so
> /usr/lib/x86_64-linux-gnu/libgmp.a /usr/lib/x86_64-linux-gnu/libgmp.so
> /usr/lib/x86_64-linux-gnu/libgmp.so.10
> /usr/lib/x86_64-linux-gnu/libgmp.so.10.2.0
> /usr/lib/x86_64-linux-gnu/libgmpxx.a
> /usr/lib/x86_64-linux-gnu/libgmpxx.so
> /usr/lib/x86_64-linux-gnu/libgmpxx.so.4
> /usr/lib/x86_64-linux-gnu/libgmpxx.so.4.4.0

我发现这个使用命令“locate libgmp”。 (找到searchb更新的内容。)

你说你在本地“安装”了吗?我运行安装没有任何选项。也许你的链接器没有被告知在哪里寻找libs?也许添加“-L”本地位置'?

希望这会有所帮助......