首先我要声明,我是一个新手,什么都不懂,所以请详细解释一下。这里的主要问题是我不明白发生了什么。
我正在尝试在 Ubuntu 16.04 上安装 luminance。github 在此处https://github.com/craigcabrey/luminance(如果你查看问题,你会发现其他人也遇到了同样的问题,但从未得到解答)
安装请求的软件包后,README 会提示:
- 克隆此存储库。
- 在克隆的存储库中,运行 ./autogen.sh。
- 如果一切正常,运行./configure --prefix=/usr && make && sudo make install。
运行 ./autogen.sh 时出现问题,弹出以下错误-
autogen.sh: reconfigure with autoreconf
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal -I m4 --force
fatal: Not a git repository (or any of the parent directories): .git
configure.ac:8: error: AC_INIT should be called with package and version arguments
/usr/share/aclocal-1.15/init.m4:29: AM_INIT_AUTOMAKE is expanded from...
configure.ac:8: the top level
autom4te: /usr/bin/m4 failed with exit status: 1
aclocal: error: echo failed with exit status: 1
autoreconf: aclocal failed with exit status: 1
autogen.sh: autoreconf has failed (1)!
autogen.sh: for the next step, run ./configure
我可能是错的,但我相信这就是为什么我在尝试运行 ./configure- 时出现此错误的原因
bash: ./configure: No such file or directory
更新:我已经通过从 git 克隆而不是下载 zip 文件解决了这个问题。
答案1
问题似乎是该luminance-master.zip
文件在没有其目录的情况下创建.git
- 并configure.ac
尝试使用git describe
将软件的版本号传递给AC_INIT
:
AC_PREREQ([2.69])
AC_INIT([luminance],
m4_esyscmd(echo -n `git describe --always --tags`),
[https://github.com/craigcabrey/luminance/issues],
[luminance],
[https://craigcabrey.github.io/luminance/])
一个相当简单的修复方法是编辑configure.ac
模板以对版本字符串进行硬编码:
AC_INIT([luminance],
[v1.0.1],
[https://github.com/craigcabrey/luminance/issues],
[luminance],
[https://craigcabrey.github.io/luminance/])
区别很简单
$ diff configure.ac.bak configure.ac
3c3
< m4_esyscmd(echo -n `git describe --always --tags`),
---
> [v1.0.1],
或者,忘记 master.zip 文件并克隆存储库:
git clone https://github.com/craigcabrey/luminance.git