编译文件:
-
首先需要确认,是要编译安装什么软件的,而有的软件包并不是用makefile的。如果makefile已经写好,不用config了,就不提供configure 。
-
若文件夹里有makefile文件,可以直接使用make编译,make install安装。
-
如果没有,看是否有setup、install等sh文件或其它可执行文件。
-
还有一种情况,这个软件解压即可运行。
-bash: ./configure: No such file or directory
如果有 configure 文件,则可以用 sh .configure
前提是:
1.要前目录有该configure文件
2.chmod a+x configure
目录下没有configure,但有configure.am或configure.in时,需要用autoconf命令来生成configure
$cd (软件名)-(版本号)
$autoconf
然后以如下方式安装:
$cd (软件名)-(版本号)
$./configure
$make
$sudo make install
具体还可以查看
use make
command to compile the file, if the err occurs like this:
Makefile:5: *** missing separator. Stop.
i.e. 第五行有问题
makefile只有命令所在的行才能且只能以TAB开头,make变量的定义、赋值,make内定函数如$(error “strings”)都不能以TAB开头,不然make会将其作为命令来处理!
cat -e -t -v makefile_name
使用如下命令, tasbs 用^I
显示,$
是一行的结束。
SUBDIR=^Ilibtrue true$
!!! libtrue 前面
如果排除了TAB用空格代替的问题后、以及由中文“:”等问题后,问题还存在
那么很可能是文件编码格式的问题
查看一下Makefile 文件编码格式是不是utf-8的,还带有BOM标记在文件头
$ xxd -l 16 Makefile
0000000: efbb bf61 6c6c 3a0a 2020 6563 686f 2068 ...all:.
去掉红色字体部分就OK了详细