• v1.7 编译内核和写驱动例子遇到问题


    1、编译内核

    /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss+0x50): multiple definition of `yylloc'; scripts/dtc/dtc-lexer.lex.o:(.bss+0x0): first defined here
    collect2: error: ld returned 1 exit status
    make[2]: *** [scripts/Makefile.host:100:scripts/dtc/dtc] 错误 1
    make[1]: *** [scripts/Makefile.build:403:scripts/dtc] 错误 2

    ./scripts/dtc/dtc-lexer.lex.c:640:YYLTYPE yylloc;
    
    前面加上 extern

    2、

    编译驱动例子报错

    https://blog.csdn.net/qq_44933518/article/details/105881723


    wang@wang-ubu22:~/program/driversimxv1.7/03_newchrled$ vi Makefile
    wang@wang-ubu22:~/program/driversimxv1.7/03_newchrled$ make
    make -C /home/wang/program/l/vlinux-imx-4.1.15-2.1.0-g3dc0a4b-v2.7 M=/home/wang/program/driversimxv1.7/03_newchrled modules
    make[1]: 进入目录“/home/wang/program/l/vlinux-imx-4.1.15-2.1.0-g3dc0a4b-v2.7”
      CC [M]  /home/wang/program/driversimxv1.7/03_newchrled/newchrled.o
    cc1: error: code model kernel does not support PIC mode

    3、

     https://blog.csdn.net/qq_42230338/article/details/117920537

    在编内核的makefile里加上

    #ARCH        ?= $(SUBARCH)
    #CROSS_COMPILE    ?= $(CONFIG_CROSS_COMPILE:"%"=%)
    ARCH        ?= arm
    CROSS_COMPILE    ?= arm-linux-gnueabihf-

    估计编译模块的时候要去搜Makefile吧

    而默认是通过命令传参的  make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- all -j16

  • 相关阅读:
    CODE[VS] 2506 可恶的体育老师
    CODE[VS] 3411 洪水
    CODE[VS] 2692 小明过生日
    CODE[VS] 2291 糖果堆
    CODE[VS] 2008 你已经爱我多久了
    忽然之间
    Amazing grace 奇异恩典
    无处安放
    AC日记
    AC日记
  • 原文地址:https://www.cnblogs.com/cnchengv/p/16727112.html
Copyright © 2020-2023  润新知