`#include <gmpxx.h>`无法使用`致命错误编译:iosfwd:没有这样的文件或目录`

时间:2016-05-05 18:54:17

标签: c linux gcc gmp

我正在尝试在我的C程序中使用GMP库,如下所示:

/* gmp test */
#include <gmpxx.h>

main() {
  printf("yay, it works!\n");
}

我正在使用gcc -o a.out my-c-program.c在Linux上编译它,但在编译上面的#include <gmpxx.h>行时出现此错误:

gcc -o a.out my-c-program.c
In file included from my-c-program.c:2:0:
/usr/include/gmpxx.h:34:18: fatal error: iosfwd: No such file or directory
compilation terminated.

Compilation exited abnormally with code 1 at Thu May  5 11:34:16

我查看了gmpxx.h下的/usr/include/gmpxx.h文件,第34行,有#include <iosfwd>行,它解释了错误。但是我该如何解决呢?我错过了一个图书馆吗?或者我在gcc命令中遗漏了什么?

1 个答案:

答案 0 :(得分:2)

GMP作为C库的正确标题名称为gmp.h

gmpxx.h适用于GMP C++ Class Interface,它建立在gmp.h之上,需要使用g++等C ++编译器进行编译。