配置命令未找到cygwin

9 bash cygwin

这个问题已被问过很多次,但我无法解决他们的问题,所以我问

我几天前安装了Cygwin.我尝试使用./configure命令,但它说

-bash:./ configure:没有这样的文件或目录

我试过用

where configure
Run Code Online (Sandbox Code Playgroud)

但我得到了输出

信息:无法找到给定模式的文件.

然后我尝试了grep configure,我得到了这个输出

/etc/bash_completion.d/configure
/usr/i686-pc-cygwin/sys-root/usr/share/libtool/libltdl/configure
/usr/share/ELFIO/configure
/usr/share/libtool/libltdl/configure
Run Code Online (Sandbox Code Playgroud)

我试图导出路径,然后运行,./configure但它也没有奏效.

我找不到configure在我的cygwin bin目录中命名的可执行文件.

这是否意味着我必须configure手动添加文件?我该如何纠正?

注意: - 我也曾尝试sh configure但它也没有用

Dev*_*lar 11

如果将软件项目设置为使用autoconf构建,则该工具会生成规范调用的脚本configure.它向系统查询随后在构建中使用的各种参数,并且特定于要构建的软件包.不同的软件项目有不同的configure脚本.他们都被称为configure,但他们的内容是不一样的.

因此,为了在设置脚本后实际构建这样的软件项目(通常由维护者在打包源tar包进行分发时完成),您可以调用:

tar xzf <tarball>.gz   # or xjf <tarball>.bz2 or whatever
cd <sourcedir>         # the one you just untarred
./configure
make
make install
Run Code Online (Sandbox Code Playgroud)

请注意前缀./,表示"位于此目录中 "(即该项目源树的顶级目录).

实际上,当您为要构建的二进制文件设置不同的目录时,更好的过程就是所谓的"树外构建" ,因此源树保持不变:

tar xzf <tarball>.gz     # or xjf <tarball>.bz2 or whatever
mkdir builddir
cd builddir
../<sourcedir>/configure
make
make install
Run Code Online (Sandbox Code Playgroud)

因此,有认为是没有configure在你的可执行文件PATH,你应该从你正试图从构建源树叫这个名字的脚本.


dam*_*gad 6

如果我正确理解......

Configure不是应该安装在您的系统上的应用程序,而是应该与源代码一起提供以准备make命令的脚本.命名的文件configure应该在源代码的主目录中.


Yea*_*man 6

我知道这是一个老问题。但是,许多人可能会发现此解决方案很有帮助。

通常我们使用 make 命令在 cygwin 中编译下载的源代码。在许多情况下,它包含一个 autogen.sh 文件。运行该文件

bash autogen.sh
Run Code Online (Sandbox Code Playgroud)

将在许多情况下解决问题。至少它解决了我的问题,然后我可以使用 make 命令