Q1   /busybox-1.18.4/scripts/gcc-version.sh: line 11: arm-linux-gcc: command not found

1.问题:/home/ubuntu-mm/HardWare/S3C2440_Board/Linux_uImage/busybox-1.18.4/scripts/gcc-version.sh: line 11: arm-linux-gcc: command not found

2.解决方法:修改Makefile文件

进入busybox目录

vim  Makefile

将ARCH  ?= $(SUBARCH) 修改为

ARCH   ?= arm

将CROSS_COMPILE ?=   修改为

CROSS_COMPILE ?= arm-linux-

(这里一定要注意的是arm和arm-linux-后面不能有空格,在编译内核源代码的时候也一定要注意这个问题)

3. 执行source /etc/profile使编译器生效

4. make menuconfig配置busybox选项:

a.进入 Busybox Settings à

build Options->

选中 “Build busybox as a static binary”, 静态链接
   Cross Compiler prefix (arm-linux-)
   Installation Options->
   Busybox Installation Prefix (/xxx/rootfs)

该选项表明编译后的busybox的安装位置

5.最重要的问题:

一定要用root权限来做busybox和linux kernel的编译,也就是说在你开发编译这些文件之前,首先的事情是su

su

passwd:

root@ubuntu:/home/ubuntu-mm/HardWare/S3C2440_Board/Linux_uImage/busybox-1.18.4# make CONFIG_PREFIX=/home/ubuntu-mm/HardWare/S3C2440_Board/Linux_uImage/RootFileSys/rootfs install

这样进入到root权限之后就没啥问题了!

Q2 linux-2.6.22.6/Makefile:416: *** mixed implicit and normal rules: deprecated syntax

后面我在Ubuntu Kylin版本下安装 交叉编译环境arm-linux-gcc 安装了libncourses*等内核编译的库 安装了cmake&make

结果在我编译内核文件和busybox都出现了同样的错误:

linux-2.6.22.6/Makefile:416: *** mixed implicit and normal rules: deprecated syntax

linux-2.6.22.6/Makefile:1449: *** mixed implicit and normal rules: deprecated syntax 翻译为中文:混合的和隐含普通规则(下图不是我的,只是拿来表示状态)

看完博客之后发现可以这样解决:

1在makefile中将416行代码(不同的版本有所差异,不够都在附近)

  1. config %config: scripts_basic outputmakefile FORCE
改为
  1. %config: scripts_basic outputmakefile FORCE
2在makefile中将1449行代码(不同的版本有所差异,不够都在附近)
  1. / %/: prepare scripts FORCE
改为
  1. %/: prepare scripts FORCE

Q3 libstdc++.so.6: cannot open shared object file

改完上面的Q1Q2之后我的编译还是不能通过,告诉我说缺少了lib32stdc++的库,错误如下:

 error while loading shared libraries: libstdc++.so.6: cannot open shared object file: No such file or directory 。好吧那我安装总该可以了吧:

sudo apt-get install lib32stdc++6

安装完之后再make就解决了我的问题!!

busybox linux-2.6.2 编译安装中碰到的若干问题的更多相关文章

  1. Linux下指定版本编译安装LAMP

    说明: 操作系统:CentOS 6.5 64位 需求: 编译安装LAMP运行环境 各软件版本如下: MySQL:mysql-5.1.73 Apache:httpd-2.2.31 PHP:php-5.2 ...

  2. Linux 从源码编译安装 OpenSSH

    https://blog.csdn.net/bytxl/article/details/46639073 Linux 从源码编译安装 OpenSSH以及各问题解决 2015年06月25日 17:37: ...

  3. 【转载】Linux升级NTPD服务器-编译安装ntp-4.2.8p12与配置

    [转载]Linux升级NTPD服务器-编译安装ntp-4.2.8p12与配置 1. 系统与软件版本 1.1 系统版本 rhel6.4(Red Hat Enterprise Linux Server r ...

  4. PCL库在Linux环境下的编译安装

    PCL库在Linux环境下的编译安装 PCL库的源码库:https://github.com/PointCloudLibrary/pcl 下载完了之后解压下来 编译库的几个步骤 mkdir build ...

  5. linux软件管理之------编译安装nginx服务器并手动编写自动化运行脚本

    红帽系列的 linux软件管理分为三类:1. rpm 安装软件.2. yum 安装软件.3. 源码包编译安装.前面两种会在相关专题给出详细讲解.源码包的编译安装是非常关键的,我们知道linux的相关版 ...

  6. Linux CentOS6.5下编译安装MySQL 5.6

    检查:卸载掉原有MySql 因为mysql数据库在Linux上实在是太流行了,所以目前下载的主流Linux系统版本基本上都集成了mysql数据库在里面,我们可以通过如下命令来查看我们的操作系统上是否已 ...

  7. Linux 下源码编译安装 vim 8.1

    前言 目前 linux 的各个发行版基本上都是带了一个 vi 编辑器的,而本文要说的 vim 编辑器对 vi 做了一些优化升级,更好用.当我们需要远程操作一台 linux 服务器的时候,只能使用命令行 ...

  8. Linux环境源码编译安装SVN

    zhoulf 2015/2/28 原创 安装说明 安装环境:Red Hat Enterprise Linux 安装方式:源码安装 软件:apr-1.5.0.tar.gz.apr-iconv-1.2.1 ...

  9. linux下Python2.7编译安装PyQt5

    ---作者吴疆,未经允许,严禁转载,违权必究--- ---欢迎指正,需要源码和文件可站内私信联系--- -----------点击此处链接至博客园原文----------- 功能说明:在ubuntu系 ...

随机推荐

  1. jqGrid后台交互样例

    schoolManageGrid = $("#jqGrid").jqGrid({ url : ctx.path+"/api/school/querySchools&quo ...

  2. swift 实践- 04 -- UIButton

    import UIKit class ViewController: UIViewController { // 按钮的创建 // UIButtonType.system: 前面不带图标, 默认文字为 ...

  3. java如何将一个List传入Oracle存储过程

    注:本文来源于  深圳gg  < java如何将一个List传入Oracle存储过程   > 一:数据库端建一个PL/SQL的数组. CREATE OR REPLACE TYPE tabl ...

  4. Oracle11g 启动数据库实例、关闭数据库实例

    Oracle11g 启动数据库实例        startup 1: nomount 模式:      描述:             该模式只会创建实例(即:创建oracle 实例的各种内存结构和 ...

  5. Confluence 6 协同编辑问题解决

    协同编辑是 Synchrony 提供的,用于在编辑的时候实时同步.在一般的情况下,这个进程是不需要 Confluence 的管理员进行手动管理的. 这个页面将会帮助你 Confluence 安装实例中 ...

  6. android中调用c++文件并转为so

    1.新建项目,不选include support c++ 报错:Error:Failed to open zip file.Gradle's dependency cache may be corru ...

  7. Django框架之第三篇模板语法(重要!!!)

    一.什么是模板? 只要是在html里面有模板语法就不是html文件了,这样的文件就叫做模板. 二.模板语法分类 一.模板语法之变量:语法为 {{ }}: 在 Django 模板中遍历复杂数据结构的关键 ...

  8. Java并发编程基础-线程安全问题及JMM(volatile)

    什么情况下应该使用多线程 : 线程出现的目的是什么?解决进程中多任务的实时性问题?其实简单来说,也就是解决“阻塞”的问题,阻塞的意思就是程序运行到某个函数或过程后等待某些事件发生而暂时停止 CPU 占 ...

  9. Mycat实现mysql主从复制(读写分离)

    数据库性能瓶颈主要原因: 随着用户数的增多,带来的是数据库连接的大幅度增长 随着业务体量的增长,表数据量(空间存储的问题)的大幅增长,其中涉及到索引的优化,mysql默认的索引是硬盘级别的,BTREE ...

  10. 网络编程—udp

    一.ip地址 1. 什么是地址 地址就是用来标记地点的 2. ip地址的作用 ip地址:用来在网络中标记一台电脑,比如192.168.1.1:在本地局域网上是唯一的. 3. ip地址的分类 每一个IP ...