configuration:错误:无法运行/ bin / sh

我正在尝试按照Fedora Virtual Box Image上的http://openrisc.net/toolchain-build.html提供的指导,为OpenRISC构buildGNU工具链。

我得到错误说

Configure: error: cannot run /bin/sh ../gcc-svn/config.sub 

当我尝试configurationgcc。

我是Linux新手。 我无法在网上find任何解决scheme。 任何帮助解决这个问题,高度赞赏。

1.检查并安装libtools

 yum install libtool yum install libtool-ltdl yum install libtool-ltdl-devel 

2.try通过shell运行“../gcc-svn/config.sub”

 /bin/bash ../gcc-svn/config.sub 

看是否显示如下:

[root @ centos jemalloc]#/ bin / bash ./config.sub
:命令不foundine 6:
:命令不foundine 8:
:命令不发现30:
:命令不foundine 31:
:命令不foundine 39:
:命令不foundine 42:
:命令不foundine 50:
:命令不foundine 57:
:命令不foundine 59:
:命令不foundine 72:
:命令不foundine 82:
:命令不foundine 85:
'/config.sub.bak:第88行:语法错误附近的意外令牌
'/config.sub.bak:第88行:`case $ 1 in

3.找到系统config.sub

  find / -name config.sub 

表明:

 /usr/share/libtool/config/config.sub 

比较两个config.sub来查看它们是否相似。

4.用系统文件替换config.sub

 mv ../gcc-svn/config.sub ../gcc-svn/config.sub.bak cp /usr/share/libtool/config/config.sub ../gcc-svn/config.sub mv ../gcc-svn/config.guess ../gcc-svn/config.guess.bak cp /usr/share/libtool/config/config.guess ../gcc-svn/config.guess 
  1. 看看它是否工作。

用十六进制编辑器打开config.sub,看看行结尾是\ r \ n,而不是\ n。 如果是这样,请备份整个文件夹,然后键入:

dos2unix *

这会将所有行结尾从\ r \ n更改为\ n,并将其替换,覆盖每个文件。 然后,再次尝试:

./configure(用你想要的任何选项)

我在cygwin for Windows上遇到了这个问题,GitHub已经将所有文件转换为\ r \ n,所以我不得不用dos2unix将它们转换回来。

什么是../gcc-svn/config.sub文件的第一行? 我猜猜它可能有一个错字。 它应该是

 #!/bin/sh 

并不是

 /bin/sh 

如果是

 #!/bin/sh 

确保文件/ bin / sh存在且可执行

 ls -l /bin/sh 

应该显示类似的东西

 -rwxrwxrwx 1 root root 4 Feb 3 2009 /bin/sh