红联Linux门户
Linux帮助

../configure: /bin/sh^M: bad interpreter: No such file or di

发布时间:2015-10-29 15:43:18来源:linux网站作者:幽雨雨幽

今天在Linux下运行./l-c,谁知道竟然报出 ../configure: /bin/sh^M: bad interpreter: No such file or directory, 这个问题。


我用git命令拉的代码,上周是可以执行./l-c的。后来查了下原因,原来是不同系统的编码格式引起的。

网上分析认为此文件是在window下写的,所以在每行后面会加个ctrl+m就是^M,所以后面的sh就变成sh^M当然是没有这个命令的,所以脚本就不能运行了。


具体原因是git开启了自动转换行符的操作,目前最稳妥的做法是关闭自动换行的设置。

对于git bash用户使用命令:

git config --global core.autocrlf false

为了保证文件的换行符是以安全的方法,避免windows与unix的换行符混用的情况,最好也加上这么一句:

git config --global core.safecrlf true


具体解决方案是:在Linux下git config --global core.autocrlf false。


configure常用参数介绍:http://www.linuxdiyf.com/linux/2861.html

Linux Configure脚本配置工具详解:http://www.linuxdiyf.com/linux/7259.html