2

我是 C++ 新手,我必须处理大整数,所以我必须通过 Cygwin 安装 GMP。

我在安装它时能找到的任何文档都假设你知道你在说什么,而我真的不知道。

无论如何,我得到了正确的.tar或其他任何东西,正确提取了它,现在我看到的任何网站都说要运行./configure --prefix=${gmp_install}......

世界到底是gmp_install什么?我configure从哪个目录运行?嗯?我可以从我的小 Cygwin 终端运行它,但它只是说没有这样的文件。

接下来,我应该输入make. 从哪里?

帮助...

4

1 回答 1

6

欢迎来到 StackOverflow (SO)。

GMP 的源目录应该可能包含名为configure. 这是您必须执行以在您的环境中“配置”构建系统的脚本。这意味着在配置期间Autotools(用于构建 GMP 的构建系统)将收集有关您的环境的信息并生成适当的makefile. 收集信息包括:了解您在 Windows 上,了解您正在使用 Cygwin,了解您的编译器是GCC并且它的版本是 xyz 等等。所有这些步骤对于成功构建都很重要。

您可以为此脚本指定许多不同的选项configure来调整配置过程。在您的情况下,您指定prefix确定安装目录的选项,即您希望构建和准备好使用的 GMP 发行版驻留的目录。例如:

./configure --prefix=/D/Libraries/GMP

将配置构建系统以将 GMP 二进制文件安装到D:\Libraries\GMP目录。

假设 GMP 源目录(您从中提取的目录*.tar)位于 say D:\Users\Me\Downloads\GMP,为了构建和安装 GMP,您应该执行以下操作:

cd /D/Users/Me/Downloads/GMP
./configure --prefix=/D/Libraries/GMP
make
make install

注意:make命令将实际执行我之前提到的makefile(由脚本生成)。configure该文件描述了在您的系统上构建和安装 GMP 的过程。

注意: ${gmp_install}什么都不是,而是一个环境变量。例如,您可以这样做:

export gmp_install=/D/Libraries/GMP
./configure --prefix=${gmp_install}

这可能很有用,例如,当您必须在多个地方使用相同的路径并且不想每次都键入它时。在其他情况下,这很有用,但为此您必须了解有关环境变量、它们的用途以及一般Bash脚本的更多信息。然而,这一切远远超出了你的问题的答案。

您将不得不花费相当多的时间来理解所有这些东西以及它们如何组合在一起,并且您可能不得不在这里提出更多关于 SO 的问题,因为仅对初学者来说理解所有这些东西可能非常具有挑战性。

于 2013-04-17T01:20:57.297 回答