“make”和“make install”从不工作
用于从提取的tar球安装程序的命令make
和make install
由于某种原因从未工作。
make
命令给出了错误:
make: *** No targets specified and no makefile found. Stop.
和make install
命令给我错误:
make: *** No rule to make target `install'. Stop.
为什么这些命令没有执行? 我该怎么做才能解决这个问题?
我认为问题是你没有得到相关程序的依赖关系 ,因为即使你运行./configure
只有文件名为makefile.in
和makefile.am
,而应该有一个名为Makefile
没有扩展名。
如果你在没有依赖项的情况下运行./configure
,它就不会生成一个makefile,然后运行make afterwards会给出你得到的错误:
make: *** No targets specified and no makefile found. Stop.
因此,通过查看下载中包含的自述文件或者如果程序源位于存储库并且您已启用源存储库,则运行程序的构建依赖项 ,运行
sudo apt-get build-dep program
获取依赖项后,再次运行./configure
,现在make和make install应该正常工作,因为将生成一个正确的Makefile
。
(您可能还需要安装诸如build-essential
类的包,其中包含必要的编译工具)
有时需要运行autoreconf来生成配置脚本,因此使用:
autoreconf -ivf
也许当你构建时,你以用户身份执行,然后以root身份进行安装,但是以root用户身份进入另一个目录。
在这种情况下的解决方案:作为根目录更改目录到您的构建目录,然后:make install
在Debian Stretch为我工作。