我试图在Windows 7机器上的MinGW下使用带有MPIR的GCC编译一个简单的C程序。我通过configure,make,make check和make install成功安装了MPIR(我想)(没有使用“ sudo”-这是什么?)。

该程序名为“ mytest.cpp”,位于MPIR的顶部文件夹中,即C:/MPIR/mpir-2.7.0/,其中也存在“ mpir.h”(它是“ the”(正确的吗?有几个吗?)mpir.h?):

#include "mpir.h"
using namespace std;

int main ()
{
  mpz_t z;
  mpz_init(z);
  return 0;
}


我尝试通过编译

gcc mytest.c -o mytest -lmpir -I / C:/MPIR/mpir-2.7.0/

希望GCC能够找到mpir.h,“-lmpir”,因为有帮助的开发人员告诉我;但是它说:

“ C:/ mingw / [...] /bin/ld.exe:找不到-lmpir”

其中“ [...]”代表“ minGW”目录中的某些目录上-下-爬升。但是,我使用当前位于
C:/MPIR/mpir-2.7.0/目录。

怎么了?如何使GCC查找mpir文件?编译选项“ -I”的拼写是否应该不同?我也听说过一些“ -L”选项,但是在任何地方都找不到。谢谢。

最佳答案

更改


  gcc mytest.c -o mytest -lmpir -I / C:/MPIR/mpir-2.7.0/





  gcc mytest.c -o mytest -lmpir -IC:/MPIR/mpir-2.7.0/ -LC:/MPIR/mpir-2.7.0


您不需要在C:前面加上/,并且-L标志通过-l标志告诉链接器在哪里找到要链接的库。

另外,我建议您使用包含和库的相对路径,而不要使用绝对路径。

10-06 14:22