编译成功了,运行为什么会失败_如何编译内核

编译成功了,运行为什么会失败_如何编译内核1:首先在内核文件夹当中选择编译配置文件arch/arm/configs下选则davinci_dm368_ipnc_defconfig_nand(nandflash启动),davinci_dm368_ipnc_defconfig_nfs(nfs文件系统启动)2:makemenuconfig保存退出3:makeARCH=armCROSS_COMPILE=arm_v5t_le-

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1:首先在内核文件夹当中选择编译配置文件

arch/arm/configs下选则davinci_dm368_ipnc_defconfig_nand(nandflash启动),davinci_dm368_ipnc_defconfig_nfs(nfs文件系统启动)

2:make menuconfig

保存退出

3:make ARCH=arm CROSS_COMPILE=arm_v5t_le- uImage

直接编译过程中

出现No rule to make target `drivers/char/csl.o’, needed by `drivers/char/built-in.o’.  Stop.

查看char目录下并无csl.c文件,所以必须把当前目录下的makefile中的编译项去掉

obj-y += csl.o
obj-y += drv.o
obj-y += edmak.o
obj-y += irqk.o
obj-y += dm365mmap.o
obj-y += cmemk.o

以上所列的文件都不存在,所以都要屏蔽掉。

出现的错误如下::::

如果选用

make ARCH=arm CROSS_COMPILE=arm-none-linux-gnueabi-gcc uImage

则会出现drivers/net/davinci_emac.c: In function ’emac_enable_channel’:
drivers/net/davinci_emac.c:4626:5: error: lvalue required as left operand of assignment
drivers/net/davinci_emac.c:4637:5: error: lvalue required as left operand of assignment
drivers/net/davinci_emac.c: In function ’emac_disable_channel’:
drivers/net/davinci_emac.c:4703:5: error: lvalue required as left operand of assignment
drivers/net/davinci_emac.c: In function ’emac_pkt_process’:
drivers/net/davinci_emac.c:5262:8: error: lvalue required as left operand of assignment

 

((volatile struct ewrap_dm646x_regs)dev->
                ewrap_regs->wrapper_646x_regs).
                C0_RXINTEN = (1 << channel);也就是提示左边的值不是合法的操作变量。

在查看ewrap_dm646x_regs为寄存器的变量,所以想到可能是选择的交叉编译工具链有问题。

就选用make ARCH=arm CROSS_COMPILE=arm_v5t_le- uImage  编译通过,并可正常使用

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170243.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Petalinux系列——0.在Docker里玩转PetaLinux

    Petalinux系列——0.在Docker里玩转PetaLinux在Docker里玩转PetaLinux来自https://github.com/alexhegit/https://mp.weixin.qq.com/s/spaq_Sv1giraeIJgsKDQYA简介PetaLinuxPetaLinux是Xilinx推出的针对ZynqSoc,ZynqMPSOC嵌入式开发板的基于Yocto二次封装的LinuxBSP构建工具,支持Ubuntu…

    2022年9月11日
    5
  • windows查看mysql服务_win10启动错误

    windows查看mysql服务_win10启动错误2.Mysql不同的日志文件。日志文件记如文件中的信息类型log-error(错误日志)记录启动、运行或停止mysql时候出现的问题。log_queries(查询日志)记录建立的客户端连接和执行的语句。log_slave_updates(更新日志)记录更改数据的语句。不赞成使用该日志。log-bin(二进制日志)记录所有更改数据的语句。还用于复制。log_show_queries…

    2022年10月14日
    2
  • curl_init()

    curl_init()
    $ch=curl_init();
    $c_url=’http://?’;
     $c_url_data=”product_id=”.$product_id.”&type=”.$type.””;
     curl_setopt($ch,CURLOPT_URL,$c_url);
     curl_setopt($ch,CURLOPT_POST,1);
     curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

    2022年7月12日
    23
  • uC/os内存优化——TLSF算法

    uC/os内存优化——TLSF算法需求uC/os内存管理机制为内存块形式,用户申请内存是需要自己指定内存区内内存块数和内存块大小,看起来很灵活,实际上很不方便,需要使用者记住内存块大小,自己维护内存区,给使用者增加了负担。TLSF算法能够满足实时性的要求,并且可有效的较小内部碎片。TLSF作为分离式空闲链表算法(SegregatedFreeLists)的拓展–将相似的空闲块利用数组或者二叉树进行管理从而使响应时间与空…

    2022年6月15日
    29
  • c语言获得当前时间_c语言怎么表示时间

    c语言获得当前时间_c语言怎么表示时间函数名:time()头文件:time.h函数原型:time_ttime(time_t*timer)功能:获取当前的系统时间,返回的结果是一个time_t类型,其实就是一个大整数,其值表示从UTC(CoordinatedUniversalTime)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数。然后可以调用localtime将time_t…

    2022年10月10日
    2
  • Flowable深入浅出-1 Flowable简介

    Flowable深入浅出-1 Flowable简介1Flowable简介什么是BPMN什么是FlowableFlowable官网、开源社区Flowable流程示例什么是BPMN先来看下百度百科的定义:由BPMI(TheBusinessProcessManagementInitiative)开发了一套标准叫业务流程建模符号(BPMN-BusinessProcessModelingNotation)。在BPMINotat…

    2022年5月21日
    103

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号