/********************************************************************************
* I.MX6 linux kernel编译错误处理
* 声明:
* 本文仅仅是对I.MX6的linux内核编译出错,记录其对应的处理方法。
*
* 2015-10-15 晴 深圳 南山平山村 曾剑锋
*******************************************************************************/ 参考文章:
. Android JB4..2_1.0.0 issue: MFG Firmware build does not compile
https://community.freescale.com/thread/307477
. honycomb-x86: build failed on ubuntu for traget-product 'vm'
https://code.google.com/p/android-x86/issues/detail?id=487
. AR1021In Production
http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en557224 一、编译错误:
LD init/built-in.o
LD .tmp_vmlinux1
drivers/built-in.o: In function `mxc_hdmi_remove':
clkdev.c:(.text+0x125e0): undefined reference to `switch_dev_unregister'
clkdev.c:(.text+0x125ec): undefined reference to `switch_dev_unregister'
drivers/built-in.o: In function `hotplug_worker':
clkdev.c:(.text+0x1445c): undefined reference to `switch_set_state'
clkdev.c:(.text+0x1446c): undefined reference to `switch_set_state'
clkdev.c:(.text+0x1466c): undefined reference to `switch_set_state'
clkdev.c:(.text+0x1467c): undefined reference to `switch_set_state'
drivers/built-in.o: In function `mxc_hdmi_probe':
clkdev.c:(.devinit.text+0x3c8): undefined reference to `switch_dev_register'
clkdev.c:(.devinit.text+0x3d4): undefined reference to `switch_dev_register'
sound/built-in.o: In function `usb_audio_disconnect':
last.c:(.text+0x16b20): undefined reference to `switch_set_state'
last.c:(.text+0x16b28): undefined reference to `switch_dev_unregister'
sound/built-in.o: In function `usb_audio_probe':
last.c:(.text+0x16f84): undefined reference to `switch_dev_register'
last.c:(.text+0x17008): undefined reference to `switch_set_state'
last.c:(.text+0x170e4): undefined reference to `switch_dev_register'
sound/built-in.o: In function `hp_jack_status_check':
last.c:(.text+0x368b0): undefined reference to `switch_set_state'
last.c:(.text+0x36944): undefined reference to `switch_set_state'
sound/built-in.o: In function `imx_wm8962_remove':
last.c:(.devexit.text+0x2b8): undefined reference to `switch_dev_unregister'
sound/built-in.o: In function `imx_wm8962_probe':
last.c:(.devinit.text+0x6e4): undefined reference to `switch_dev_register'
last.c:(.devinit.text+0x718): undefined reference to `switch_set_state'
make: *** [.tmp_vmlinux1] Error 解决方法:
主要是make menuconfig打开swith这个选项,详情参考文章1。 二、编译错误:
LD kernel/built-in.o
CC drivers/gpu/drm/drm_auth.o
In file included from include/drm/drmP.h::,
from drivers/gpu/drm/drm_auth.c::
include/drm/drm.h::: fatal error: sys/types.h: No such file or directory
compilation terminated.
make[]: *** [drivers/gpu/drm/drm_auth.o] Error
make[]: *** [drivers/gpu/drm] Error
make[]: *** [drivers/gpu] Error
make: *** [drivers] Error 解决方法:
由于采用了Android自带的编译器,本来就不能用Android的编译器,导致出现了这个问题,所以换成Linux Qt的编译器就行了。 三、编译错误:
CC [M] drivers/usb/gadget/audio.o
CC [M] drivers/usb/gadget/ether.o
drivers/usb/gadget/ether.c: In function 'rndis_do_config':
drivers/usb/gadget/ether.c::: error: too few arguments to function 'rndis_bind_config'
drivers/usb/gadget/f_rndis.c::: note: declared here
drivers/usb/gadget/ether.c::: warning: control reaches end of non-void function [-Wreturn-type]
make[]: *** [drivers/usb/gadget/ether.o] Error
make[]: *** [drivers/usb/gadget] Error
make[]: *** [drivers/usb] Error
make: *** [drivers] Error 解决方法:
make menuconfig 去掉这部分驱动也许就行了。目前本人通过选择一个能够编译通过的文件系统
Device Drivers --->
[*] USB support --->
<*> USB Gadget Support --->
<*> USB Gadget Drivers (Gadget Filesystem (EXPERIMENTAL)) --->
(X) Gadget Filesystem (EXPERIMENTAL) 四、编译错误:
Qt@aplex:~/kernel/linuxQt_kernel$ make uImage
CHK include/linux/version.h
CHK include/generated/utsrelease.h
make[]: `include/generated/mach-types.h' is up to date.
CALL scripts/checksyscalls.sh
CHK include/generated/compile.h
CC drivers/input/touchscreen/ar1020-spi.o
drivers/input/touchscreen/ar1020-spi.c: In function 'ar1020_spi_probe':
drivers/input/touchscreen/ar1020-spi.c::: error: implicit declaration of function 'set_irq_type' [-Werror=implicit-function-declaration]
drivers/input/touchscreen/ar1020-spi.c::: warning: ignoring return value of 'request_irq', declared with attribute warn_unused_result [-Wunused-result]
cc1: some warnings being treated as errors make[]: *** [drivers/input/touchscreen/ar1020-spi.o] Error
make[]: *** [drivers/input/touchscreen] Error
make[]: *** [drivers/input] Error
make: *** [drivers] Error 解决方法:
//set_irq_type(i, IRQ_TYPE_EDGE_RISING); // 将中断引发类型放在request_irq()中
if ( >= (ret=request_irq(i, test_irq_handler_func, IRQ_TYPE_EDGE_RISING,
"AR1020 IRQ", priv))){
......
}

I.MX6 linux kernel编译错误处理的更多相关文章

  1. I.MX6 Linux kernel LVDS backlight enable

    /*************************************************************************** * I.MX6 Linux kernel LV ...

  2. linux内核编译错误集锦

    1,我是用的ubuntu16.04 32位系统编译内核linux-3.0.1出现如下错误:Can't use 'defined(@array)' (Maybe you should just omit ...

  3. Linux kernel 编译问题记录【转】

    本文转载自:http://sunyongfeng.com/201701/programmer/linux/kernel_compile_fail.html 编译内核出现以下错误 Can't use ' ...

  4. Linux Gcc编译错误(转载)

    转自:http://www.linuxidc.com/Linux/2012-01/52153.htm Linux系统下的c编程与Windows有所不同,如果你在用gcc编译代码的时候提示‘for’ l ...

  5. linux C++ 编译错误 file not found 其实是原文件后缀的问题

    gcc和clang会根据源文件的后缀.c或者.cpp判断原文件类型,采取不同的编译策略,所以我使用它们编译后缀是.c的C++原文件的时候会出现找不到include的文件的错误,使用正确的后缀名即可.同 ...

  6. linux kernel编译配置相关

    1 配置界面的搜索功能 “/”可以进行模块搜索,搜索结果里面还有依赖信息.非常方便. 2 在使用纯内核,不实用module的时候,很多情况下出错是因为相应的特性为编译进内核 案例一: 块设备已经发现了 ...

  7. Linux C 编译错误总结

    1. test.c:59:5: warning: incompatible implicit declaration of built-in function ‘memset’ [enabled by ...

  8. linux kernel 编译

    lin

  9. Linux kernel make 常用选项介绍

    Linux kernel 编译方法大全记录 一.这是一个我自己写的自动make脚本: #!/bin/sh export ARCH=arm export CROSS_COMPILE=arm-linux- ...

随机推荐

  1. Web Services 简介

    通过使用 Web Services,您的应用程序可以向全世界发布信息,或提供某项功能.Web Services 脚本平台需支持 XML + HTTP. Web Services 简介 Web Serv ...

  2. 统计编程的框架与R语言统计分析基础——摘(2)统计分析之线性回归

    一.线性回归 1.简单线性回归 a. > x = women > x height weight 1 58 115 2 59 117 3 60 120 4 61 123 5 62 126 ...

  3. 5.1 Components — Introduction

    1. HTML被设计的时候,浏览器是一个简单的文件浏览器.开发构建大的Web应用程序需要更多的东西. 2. 不是试图取代HTML,然而,Ember.js拥抱它,然后增加了许多新功能使得构建web应用程 ...

  4. python: 基本的日期与时间转换

    需要执行简单的时间转换,比如天到秒,小时到分钟等的转换. 为了执行不同时间单位的转换和计算,请使用datetime 模块.比如,为了表示一个时间段,可以创建一个timedelta 实例,就像下面这样: ...

  5. oracle定时器job的使用

    对于DBA来说,数据库Job再熟悉不过了,因为经常要数据库定时的自动执行一些脚本,或做数据库备份,或做数据的提炼,或做数据库的性能优化,包括重建索引等等的工作.但是,Oracle定时器Job时间的处理 ...

  6. Python3.x的BeautifulSoup解析html常用函数

    Python3.x的BeautifulSoup解析html常用函数 1,初始化: soup = BeautifulSoup(html) # html为html源代码字符串,type(html) == ...

  7. Ubuntu 16.04 (官方命令行)安装MongoDB 3.6.2(社区版)

    概述 使用本教程从 .deb 包在LTS Ubuntu Linux系统上安装MongoDB Community Edition. 虽然Ubuntu包含自己的MongoDB包,但官方的MongoDB社区 ...

  8. 设置VS快捷代码片段

    一.自定义sinppets方式 1.在VS安装路径[D:\vs2013\VC\Snippets\2052\Visual C++]下新建一个snippt文件 2.添加代码 <?xml versio ...

  9. openwrt生成的交叉编译器在哪里

    答:在staging_dir目录下,示例如下: 编译一个arm64架构所生成的编译器在staging_dir/toolchain-aarch64_generic_gcc-7.4.0_musl/bin/ ...

  10. 如何解决Nginx php 50x 错误

    SEO反馈百度爬虫经常504,一般情况下是由nginx默认的fastcgi进程响应慢引起的,但也有其他情况,这里我总结了一些解决办法供大家参考.   方法/步骤 一般50x状态码问题分析: Nginx ...