关于-/bin/sh: 命令:not found的解决办法


关于mini2440上-/bin/sh: 命令:not found的解决办法
我按照mini2440的移植手册移植了linux内核和文件系统不同的是我用的交叉编译器是最新的4.4.1而没有用天嵌科技提供的交叉编译器,当我移植好了yaffs文件系统,想写个helloworld程序在开发板上测试下,我把编译好的helloworld文件放到yaffs文件系统的/usr/bin目录下,但当我运行/usr/bin/helloworld命令是提示“-/bin/sh: /usr/bin/helloworld: not found”,一开始我以为是helloworld没有运行权限,不过我给了它运行权限还是提示同样的错误。我在网上搜了下找到了原因:只所以提示“-/bin/sh: /usr/bin/helloworld: not found”这个,是因为我没有拷helloworld所需的库文件。那怎么才能知道helloworld需要哪些库文件呢,可以这样,在命令行输入arm-linux-readelf -a helloworld 命令然后在输出的内容中找到Program Headers:节这里就有helloworld所需的库文件(关于readelf可以参考这里< http://blog.csdn.net/eroswang/archive/2007/12/25/1967243.aspx>)如下图:

 
     看来我们需要ld-linux.so.3这个库,在你的交叉编译器中找到这个库文件把它拷到我们文件系统的/lib目录中然后烧到开发板中再次运行/usr/bin/helloworld结果提示“/usr/bin/helloworld: error while loading shared libraries: libgcc_s.so.1: cannot open shared object file: No such file or directory”有效果了,最起码不是前一个错误提示了,这就证明方法对头,我们看一下上面的错误这次直接提示所需的库文件了,我们按提示把libgcc_s.so.1拷到文件系统的/lib中,然后再次运行,又提示“/usr/bin/helloworld: error while loading shared libraries: libc.so.6: cannot open shared object file: No such file or directory”还是少库文件,我们再把这个也拷到文件系统的/lib中,这次总算是行了,终于看到“hello world”。
参考文章:< http://www.cnblogs.com/nick123/archive/2009/12/01/1614919.html>

  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
/bin/sh: gcc: not found 是一个错误提示,表示在当前系统中找不到 gcc 编译器。gcc 是 GNU Compiler Collection 的缩写,是一种常用的编译器工具,用于编译 C、C++ 等程序语言。 如果你在使用 gcc 编译器时遇到了这个错误,可能是因为你的系统没有安装 gcc 或者没有将其路径添加到环境变量中。你可以通过以下步骤来解决这个问题: 1. 检查是否已经安装了 gcc。在终端中输入以下命令: ``` gcc --version ``` 如果显示出 gcc 的版本信息,则表示已经安装了 gcc。如果没有显示任何信息或者提示找不到命令,则需要进行下一步操作。 2. 安装 gcc。根据你所使用的操作系统不同,安装 gcc 的方法也会有所不同。例如,在 Ubuntu 系统中,可以使用以下命令安装 gcc: ``` sudo apt-get install gcc ``` 在其他操作系统中,可以通过包管理器或者从官方网站下载安装包进行安装。 3. 添加 gcc 路径到环境变量。如果已经安装了 gcc,但仍然提示找不到命令,可能是因为系统没有将 gcc 的路径添加到环境变量中。你可以编辑 ~/.bashrc 或者 ~/.bash_profile 文件,在其中添加以下行: ``` export PATH=$PATH:/path/to/gcc ``` 将 "/path/to/gcc" 替换为你的 gcc 安装路径。保存文件后,执行以下命令使修改生效: ``` source ~/.bashrc ``` 或者 ``` source ~/.bash_profile ``` 完成上述步骤后,再次尝试使用 gcc 编译器,应该就不会再出现 "/bin/sh: gcc: not found" 的错误了。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值