标签: autotools

无法运行配置命令:“没有那个文件或目录”

我正在尝试从源代码(通过 git)安装 Debian 软件包。我下载了包,更改到包的目录并运行./configure命令,但它返回bash: ./configure: No such file or directory. 可能是什么问题?一个configure.ac文件位于程序文件夹。

./configure
make
sudo make install
Run Code Online (Sandbox Code Playgroud)

compiling configure autotools

37
推荐指数
2
解决办法
17万
查看次数

为什么 configure 将变量作为参数?

VAR=value ./configure一样的./configure VAR=value吗?

在第一种情况下,shell 设置环境变量,在第二种情况下,configure 脚本将字符串'VAR=value'作为参数,然后大概设置变量。我想知道 configure 是否对变量执行了其他操作(可能会忽略或过滤某些值),以及为什么它首先将变量作为参数。

configure autotools

11
推荐指数
1
解决办法
4157
查看次数

如何防止automake覆盖INSTALL?

我正在处理一个具有自定义INSTALL文件的项目。运行automake --add-missing(或更准确地说,autoreconf -i)将生成 GNU 默认INSTALL文件,并用它覆盖我们的文件。

我怎样才能防止这种行为?我希望它要么根本不生成 GNUINSTALL文件,要么用不同的名称创建它。

另外,我不想禁用automake可能生成的任何其他文件。


编辑1:automake手册

如果--add-missing给出该选项,automake将添加INSTALL文件的通用版本以及COPYING包含当前版本的 GNU 通用公共许可证 [...] 文本的文件。但是,现有COPYING 文件永远不会被automake.

它说现有COPYING文件不会被覆盖,但没有说明该INSTALL文件的任何内容,因此它似乎会被无条件覆盖。

编辑 2:根据要求,这是我的configure.acMakefile.am,以及autogen.sh我们运行到autoreconf项目的内容:

configure.ac

AC_INIT([program name], [version number], [bug report], [short name], [url])
AC_CONFIG_SRCDIR([Main/Source/main.cpp])

AM_PROG_AS 
AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE
AC_PROG_CC
AC_PROG_CXX

CFLAGS="$CFLAGS $SDL_CFLAGS "
LIBS="$LIBS $SDL_LIBS" …
Run Code Online (Sandbox Code Playgroud)

gnu automake autoreconf autotools

6
推荐指数
2
解决办法
1435
查看次数

`minix/config.h` 有什么作用?

很多次当我运行时configure,我收到以下消息:

checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
Run Code Online (Sandbox Code Playgroud)

configure运行时没有错误或警告,但每次都收到一条消息并且不明白它的含义,这有点令人不安。我做了一些研究,知道 Minix 是一个轻量级的类 Unix 操作系统,但不知道为什么要configure检查这个特定文件的存在。

有什么作用minix/config.h,有什么configure用途?

make configure minix autotools

6
推荐指数
1
解决办法
4722
查看次数

./configure : 一次显示所有丢失的包

我编译了一个使用 autotools 作为构建系统的包 ( autoreconf, ./configure, make, make install)。

./configure 当包裹丢失时停止。

对于每个丢失的包,我会查找它的名称,然后要么查找,要么apt install package在不可用的情况下从源代码编译它。

然后我./configure再次运行,它告诉我另一个未满足的依赖项的名称。

如果只有一两个丢失的包,这是可以的。但是有19个!

libmspack-dev
libglib2.0-dev
libpam0g-dev
libssl-dev
libxml2-dev
libxmlsec1-dev
libx11-dev
libcunit1-dev
libxext-dev
libxinerama-dev
libxi-dev
libxrender-dev
libxrandr-dev
libxtst-dev
libgdk-pixbuf2.0-dev
libgtk-3-dev
libgtkmm-3.0-dev
libtool
dnet
Run Code Online (Sandbox Code Playgroud)

我想./configure继续出错,并一次显示所有丢失的包,以便我可以一次安装它们。否则,它是漫长而痛苦的运行./configureapt install19倍。

configure autoreconf autotools

6
推荐指数
2
解决办法
1605
查看次数

automake 错误:不推荐使用正则表达式中未转义的左大括号

编译并安装 GNU automake 1.15 后,每当我运行 automake 时都会出现此错误:

Unescaped left brace in regex is deprecated, passed through in regex;
marked by <-- HERE in m/\${ <-- HERE ([^ \t=:+{}]+)}/
at /usr/local/bin/automake line 3936
Run Code Online (Sandbox Code Playgroud)

我正在运行 perl v5.22.0。

perl automake autotools

5
推荐指数
1
解决办法
2万
查看次数

什么是 Linux 上的 Inno Setup 在 Windows 上的等价物?

希望创建一个 Linux 安装程序,它的工作方式类似于 Windows 上的 Inno Setup(这是在 Windows 上创建安装程序的一个很棒的小工具)。

我的项目非常简单(只有几个文件夹),所以我认为使用autotoolscmake太费力了。

有没有像 Inno Setup 这样简单但适用于 Linux 的东西?

software-rec software-installation cmake autotools

5
推荐指数
1
解决办法
3933
查看次数

`openocd` 配置脚本找不到 `libusb`

我正在我的 Debian Stretch 系统上安装 OpenOCD。当我运行./configure它时报告找不到 libusb。

...
checking for LIBUSB1... no
configure: WARNING: libusb-1.x not found, trying legacy libusb-0.1 as a fallback; consider installing libusb-1.x instead
checking for LIBUSB0... no
...
Run Code Online (Sandbox Code Playgroud)

我安装了正确的依赖项,但仍然收到错误。

libhidapi-libusb0/stable,now 0.8.0~rc1+git20140818.d17db57+dfsg-1 amd64 [installed,automatic]
libusb-1.0-0/stable,now 2:1.0.21-1 amd64 [installed,automatic]
libusb-1.0-0-dev/stable,now 2:1.0.21-1 amd64 [installed]
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?

debian configure autotools

4
推荐指数
1
解决办法
3136
查看次数

卸载通过 configure、make 和 make install 安装的应用程序需要配置文件的原因是什么?

https://unix.stackexchange.com/a/141619/674

我不会只存储生成文件。虽然卸载对象可能不会(或perhap,不应该)需要什么成功,这不是一个保证。

所以这意味着保留原始包的副本。但是,如果有旧版本的公共存档并且您不担心它会消失,那就没什么意义了。无论如何,您可以稍后再次下载它。唯一的问题是,对于自动工具,您需要先运行./configure,如果您使用不同的选项uninstall可能会遗漏一些东西——但我认为这不是一个大问题。有时,我会记录某些东西的特定配置。

我把独立的源码包放在/usr/local/src.

为什么“对于自动工具,你需要先运行./configure,如果你使用不同的选项uninstall可能会错过一些东西”?

卸载通过 configure、make 和 make install 安装的应用程序需要配置文件的原因是什么?

谢谢。

make software-installation configure autotools

0
推荐指数
1
解决办法
46
查看次数