我是天嵌s3c2440的板子,现在Linux移植,一直按厂家手册做的,可是make menuconfig的时候总是出现如下错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我是天嵌s3c2440的板子,现在Linux移植,一直按厂家手册做的,可是make menuconfig的时候总是出现如下错误相关的知识,希望对你有一定的参考价值。
HOSTCC scripts/basic/fixdep
/bin/sh: line 1: gcc: command not found
make[1]: *** [scripts/basic/fixdep] Error 127
make: *** [scripts_basic] Error 2
求帮助,谢谢,我的交叉编译器使用的厂家的,使用arm-linux-gcc -v可以看到gcc的版本信息
注意提示,是 gcc 这个命令未找到,而不是 arm-linux-gcc 这个命令未找到。
而且再看第一行提示
HOSTCC scripts/basic/fixdep
这行里面的 HOSTCC ,HOST 一般对于 Linux 来说是本地的东西意思,也就是说这行用的是当前系统使用的 cc (这个 cc 是 C Compiler 的意思,gcc 命令是 GNU Compiler Collection 的 cc )。也就是说,当前系统的 gcc (一般习惯下没有前缀的 gcc 就是本地 GCC )没有找到。
所以充分表明你根本不会 Linux 就去弄嵌入式……追问
我是才开始学= =,想先用厂家的手册走一遍流程,熟悉一下流程然后自己深入。。。。还望高手不吝赐教。。。。。
谢谢,然后重装redhat解决了问题。。。
还有这样的学习过程可行吗,您对linux学习有什么建议
先去学 Linux ,之后再学 Linux 的开发。之后再说嵌入式的问题。
而不是你这样上来就学嵌入式。这样的话,你连 Linux 的很多为什么怎么了都不知道,你很多情况下根本就没办法继续。
那是应该先把什么Linux内核架构。。驱动程序开发的书都看透,然后再来实践对吗?谢谢您了
追答最起码你得知道一些和系统底层相关的内容吧?
内核架构和驱动开发如果你不管内核,只管编译到是不需要。不过嵌入式很难不会用上这两条。
哦,谢谢您了
参考技术A 应该这样。make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig追问当时用这个命令还是不行。。。。= =
追答那试试打开Makefile文件,找到
ARCH ?=
CROSS_COMPILE ?=
这两行
修改为
ARCH ?=arm
CROSS_COMPILE ?=arm-linux-
好像不是这个引起的,那些已经都改过了,是redhat安装的不正确
lrzsz 移植到 ARM-linux 嵌入式板子上
特别说明:SSH 或 串口 都可以使用 lrzsz 进行通信
lrzsz是一个Unix通信包,提供XMODEM、YMODEM和ZMODEM文件传输协议。lrzsz以前是Omen科技的主打软件,现在已经免费,并且遵循GNU开源协议。
- xmodem:简单通用,传输信息单位是“包=128B”,传输速度慢,适合电话线路质量差的情况下用。
- ymodem:由XMODEM演变来,效率可靠性高“包=128*8B”,一次传输可发送或接受几个文件。
- zmodem:与上两种不同,以连续的数据流发送数据,效率更高。
1 下载源码包
2 复制并解压源码包
$ mkdir ~/lrzsz $ cp lrzsz-0.12.20.tar.gz ~/lrzsz $ cd ~/lrzsz $ tar zxvf lrzsz-0.12.20.tar.gz
3 配置
$ cd lrzsz-0.12.20/ $ export PATH=$PATH:/usr/local/arm-2010q1/bin # 交叉编译工具路径加入系统环境变量! $ CC=arm-none-linux-gnueabi-gcc CFLAGS=-O2 ./configure # 配置
这里 ./configure 必须放在后面,否则无法识别到交叉编译工具。
4 编译安装
$ make -j4 # 并行编译,使用4个CPU同时编译,可提高编译速度
make完成之后,会在当前目录 src/ 下生成 lrz 和 lsz 两个文件。
5 复制到目标板并执行
通过网络、U盘、SD卡等方式,将生成的 lrz 和 lsz 复制到目标板的 /usr/sbin 目录,并在目标版上添加可执行权限:
挂载U盘:mount -t vfat /dev/sda1 /mnt/udisk
$ cp lrz lsz /usr/sbin $ cd /usr/sbin/ $ chmod +x lrz lsz
注:由于 secureCRT 使用的命令是 rz 和 sz,可以把 lrz 和 lsz 这两个文件重命名。
6 配置串口
在使用之前,需要设置串口:
7 测试
在目标版上,执行 lrz 命令将文件从PC机传送到目标版上,执行 lsz 命令将文件从目标版传到PC机上:
$ lrz
$ lsz myfile
以上是关于我是天嵌s3c2440的板子,现在Linux移植,一直按厂家手册做的,可是make menuconfig的时候总是出现如下错误的主要内容,如果未能解决你的问题,请参考以下文章