1

我有一个用于使用 zkcm 库的某些程序的 makefile,包括以下对象行:

zkcm_c.o: zkcm_c.cpp zkcm_c.h config.h
     g++ -c zkcm_c.cpp -lgmp -lgmpxx -lmpfr

编译器抱怨有一个“未定义的对 '_ imp _mpfr__inits2' 的引用”,并且每次使用 mpfr 函数时都是一样的。奇怪的是,makefile 中还有其他对象使用 mpfr 函数没有问题,例如主程序(第一行):

SpMC: SpMC.cpp MCutility.h HPutility.h wfs.h MC_funcs.h $(ZKCMOBJECTS)  $(ZKCMHFILES)
     g++ SpMC.cpp -lgmp -lmpfr -lmpc -o SpMC $(ZKCMOBJECTS)

在这两种情况下,我都#include<mpfr.h>在源代码中,如您所见,使用-lmpfr. 任何想法为什么这适用于 SpMC.cpp 但不适用于 zkcm_c.cpp?

4

0 回答 0