官方QQ群收藏本站

百问linux嵌入式论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 70|回复: 6

[悬赏 3 金钱]设备树中的u-boot1.1.6编译失败

[复制链接]

2

主题

13

帖子

95

积分

注册会员

Rank: 2

积分
95
发表于 2019-9-6 11:22:11 | 显示全部楼层 |阅读模式
注意:如果点击空白处无法输入,则点击字会有输入提示符 | 则可以使用键盘进行输入!
此板块为 [uboot开发]

  • 问题所在章节:
  • 发生问题的运行环境:
      arm-linux-gnueabi-gcc -v  后
输出:
Using built-in specs.
COLLECT_GCC=arm-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc-cross/arm-linux-gnueabi/7/lto-wrapper
Target: arm-linux-gnueabi
Configured with: ../src/configure -v --with-pkgversion='Ubuntu/Linaro 7.3.0-27ubuntu1~18.04' --with-bugurl=file:///usr/share/doc/gcc-7/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++ --prefix=/usr --with-gcc-major-version-only --program-suffix=-7 --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-libitm --disable-libquadmath --disable-libquadmath-support --enable-plugin --with-system-zlib --with-target-system-zlib --enable-multiarch --enable-multilib --disable-sjlj-exceptions --with-arch=armv5t --with-float=soft --disable-werror --enable-multilib --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=arm-linux-gnueabi --program-prefix=arm-linux-gnueabi- --includedir=/usr/arm-linux-gnueabi/include
Thread model: posix
gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)






  • 问题发生描述:
以下为readme文件中的教程
2. u-boot的编译:
a. 首先设置环境变量使用要使用arm-linux-gnueabi-gcc 4.3.2
b.
把源文件u-boot-1.1.6.tar.bz2、补丁文件u-boot-1.1.6_device_tree_for_jz2440.patch放在同一个目录,
执行如下命令:
tar xjf u-boot-1.1.6.tar.bz2                                   // 解压
cd u-boot-1.1.6                  
patch -p1 < ../u-boot-1.1.6_device_tree_for_jz2440.patch       // 打补丁
make 100ask24x0_config                                         // 配置
make


按照步骤下来报下列错误

  • 输出的错误信息:
make[1]: 离开目录“/home/lt/u-boot/u-boot-1.1.6/common”
UNDEF_SYM=`arm-linux-gnueabi-objdump -x lib_generic/libgeneric.a board/100ask24x0/lib100ask24x0.a cpu/arm920t/libarm920t.a cpu/arm920t/s3c24x0/libs3c24x0.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/usb/libusb.a drivers/sk98lin/libsk98lin.a common/libcommon.a |sed  -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
        cd /home/lt/u-boot/u-boot-1.1.6 && arm-linux-gnueabi-ld -Bstatic -T /home/lt/u-boot/u-boot-1.1.6/board/100ask24x0/u-boot.lds -Ttext 0x33F80000  $UNDEF_SYM cpu/arm920t/start.o \
                --start-group lib_generic/libgeneric.a board/100ask24x0/lib100ask24x0.a cpu/arm920t/libarm920t.a cpu/arm920t/s3c24x0/libs3c24x0.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/usb/libusb.a drivers/sk98lin/libsk98lin.a common/libcommon.a --end-group  \
                -Map u-boot.map -o u-boot
fs/jffs2/libjffs2.a(mini_inflate.o):在函数‘read_symbol’中:
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:146:对‘pull_bit’未定义的引用
fs/jffs2/libjffs2.a(mini_inflate.o):在函数‘decompress_huffman’中:
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:176:对‘pull_bits’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:187:对‘pull_bits’未定义的引用
fs/jffs2/libjffs2.a(mini_inflate.o):在函数‘init_code_tables’中:
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:225:对‘cramfs_memset’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:226:对‘cramfs_memset’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:227:对‘cramfs_memset’未定义的引用
fs/jffs2/libjffs2.a(mini_inflate.o):在函数‘decompress_block’中:
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:377:对‘pull_bit’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:378:对‘pull_bits’未定义的引用
fs/jffs2/libjffs2.a(mini_inflate.o):在函数‘decompress_none’中:
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:132:对‘pull_bits’未定义的引用
fs/jffs2/libjffs2.a(mini_inflate.o):在函数‘decompress_dynamic’中:
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:247:对‘pull_bits’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:248:对‘pull_bits’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:249:对‘pull_bits’未定义的引用
fs/jffs2/libjffs2.a(mini_inflate.o):/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:261: 跟着更多未定义的参考到 pull_bits
fs/jffs2/libjffs2.a(mini_inflate.o):在函数‘decompress_fixed’中:
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:343:对‘cramfs_memset’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:344:对‘cramfs_memset’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:345:对‘cramfs_memset’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:346:对‘cramfs_memset’未定义的引用
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:347:对‘cramfs_memset’未定义的引用
fs/jffs2/libjffs2.a(mini_inflate.o):/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:348: 跟着更多未定义的参考到 cramfs_memset
Makefile:264: recipe for target 'u-boot' failed
make: *** [u-boot] Error 1


回复

使用道具 举报

8

主题

1463

帖子

4537

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4537
发表于 2019-9-6 22:23:51 | 显示全部楼层
1.1.6的uboot需要用3.4.的编译器
我是百问网www.100ask.org答疑助手,有关技术问题请与我联系。
韦东山视频开发板购买店铺:https://100ask.taobao.com/
微信公众平台:baiwenkeji
回复 支持 反对

使用道具 举报

2

主题

13

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 2019-9-7 17:17:50 | 显示全部楼层
百问网-李老师 发表于 2019-9-6 22:23
1.1.6的uboot需要用3.4.的编译器

那为啥设备树视频的文件中的README文件里写的是

2. u-boot的编译:
a. 首先设置环境变量使用要使用arm-linux-gnueabi-gcc 4.3.2
b.
把源文件u-boot-1.1.6.tar.bz2、补丁文件u-boot-1.1.6_device_tree_for_jz2440.patch放在同一个目录,
执行如下命令:
tar xjf u-boot-1.1.6.tar.bz2                                   // 解压
cd u-boot-1.1.6                  
patch -p1 < ../u-boot-1.1.6_device_tree_for_jz2440.patch       // 打补丁
make 100ask24x0_config                                         // 配置
make                                                           // 编译, 可以得到u-boot.bin
回复 支持 反对

使用道具 举报

8

主题

1463

帖子

4537

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4537
发表于 2019-9-8 20:53:31 | 显示全部楼层
hard 发表于 2019-9-7 17:17
那为啥设备树视频的文件中的README文件里写的是

2. u-boot的编译:

设备树的uboot确实需要用4.3.2,删掉源码重新解压一份试试,
注意不要在共享文件夹中
我是百问网www.100ask.org答疑助手,有关技术问题请与我联系。
韦东山视频开发板购买店铺:https://100ask.taobao.com/
微信公众平台:baiwenkeji
回复 支持 反对

使用道具 举报

2

主题

13

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 3 天前 | 显示全部楼层
百问网-李老师 发表于 2019-9-8 20:53
设备树的uboot确实需要用4.3.2,删掉源码重新解压一份试试,
注意不要在共享文件夹中

直接在ubuntu的终端

版本为4.3.2
lt@ubuntu:~/u-boot$ arm-linux-gcc -v
Using built-in specs.
Target: arm-none-linux-gnueabi
Configured with: /scratch/julian/lite-respin/linux/src/gcc-4.3/configure --build=i686-pc-linux-gnu --host=i686-pc-linux-gnu --target=arm-none-linux-gnueabi --enable-threads --disable-libmudflap --disable-libssp --disable-libstdcxx-pch --with-gnu-as --with-gnu-ld --enable-languages=c,c++ --enable-shared --enable-symvers=gnu --enable-__cxa_atexit --with-pkgversion='Sourcery G++ Lite 2008q3-72' --with-bugurl=https://support.codesourcery.com/GNUToolchain/ --disable-nls --prefix=/opt/codesourcery --with-sysroot=/opt/codesourcery/arm-none-linux-gnueabi/libc --with-build-sysroot=/scratch/julian/lite-respin/linux/install/arm-none-linux-gnueabi/libc --with-gmp=/scratch/julian/lite-respin/linux/obj/host-libs-2008q3-72-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --with-mpfr=/scratch/julian/lite-respin/linux/obj/host-libs-2008q3-72-arm-none-linux-gnueabi-i686-pc-linux-gnu/usr --disable-libgomp --enable-poison-system-directories --with-build-time-tools=/scratch/julian/lite-respin/linux/install/arm-none-linux-gnueabi/bin --with-build-time-tools=/scratch/julian/lite-respin/linux/install/arm-none-linux-gnueabi/bin
Thread model: posix
gcc version 4.3.2 (Sourcery G++ Lite 2008q3-72)



编译报错部分截图
make[1]: Leaving directory '/home/lt/u-boot/u-boot-1.1.6/common'
UNDEF_SYM=`arm-linux-gnueabi-objdump -x lib_generic/libgeneric.a board/100ask24x0/lib100ask24x0.a cpu/arm920t/libarm920t.a cpu/arm920t/s3c24x0/libs3c24x0.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/usb/libusb.a drivers/sk98lin/libsk98lin.a common/libcommon.a |sed  -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p'|sort|uniq`;\
        cd /home/lt/u-boot/u-boot-1.1.6 && arm-linux-gnueabi-ld -Bstatic -T /home/lt/u-boot/u-boot-1.1.6/board/100ask24x0/u-boot.lds -Ttext 0x33F80000  $UNDEF_SYM cpu/arm920t/start.o \
                --start-group lib_generic/libgeneric.a board/100ask24x0/lib100ask24x0.a cpu/arm920t/libarm920t.a cpu/arm920t/s3c24x0/libs3c24x0.a lib_arm/libarm.a fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a net/libnet.a disk/libdisk.a rtc/librtc.a dtt/libdtt.a drivers/libdrivers.a drivers/nand/libnand.a drivers/nand_legacy/libnand_legacy.a drivers/usb/libusb.a drivers/sk98lin/libsk98lin.a common/libcommon.a --end-group  \
                -Map u-boot.map -o u-boot
fs/jffs2/libjffs2.a(mini_inflate.o): In function `read_symbol':
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:146: undefined reference to `pull_bit'
fs/jffs2/libjffs2.a(mini_inflate.o): In function `decompress_huffman':
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:176: undefined reference to `pull_bits'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:187: undefined reference to `pull_bits'
fs/jffs2/libjffs2.a(mini_inflate.o): In function `init_code_tables':
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:225: undefined reference to `cramfs_memset'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:226: undefined reference to `cramfs_memset'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:227: undefined reference to `cramfs_memset'
fs/jffs2/libjffs2.a(mini_inflate.o): In function `decompress_block':
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:377: undefined reference to `pull_bit'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:378: undefined reference to `pull_bits'
fs/jffs2/libjffs2.a(mini_inflate.o): In function `decompress_none':
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:132: undefined reference to `pull_bits'
fs/jffs2/libjffs2.a(mini_inflate.o): In function `decompress_dynamic':
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:247: undefined reference to `pull_bits'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:248: undefined reference to `pull_bits'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:249: undefined reference to `pull_bits'
fs/jffs2/libjffs2.a(mini_inflate.o):/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:261: more undefined references to `pull_bits' follow
fs/jffs2/libjffs2.a(mini_inflate.o): In function `decompress_fixed':
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:343: undefined reference to `cramfs_memset'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:344: undefined reference to `cramfs_memset'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:345: undefined reference to `cramfs_memset'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:346: undefined reference to `cramfs_memset'
/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:347: undefined reference to `cramfs_memset'
fs/jffs2/libjffs2.a(mini_inflate.o):/home/lt/u-boot/u-boot-1.1.6/fs/jffs2/mini_inflate.c:348: more undefined references to `cramfs_memset' follow
Makefile:264: recipe for target 'u-boot' failed
make: *** [u-boot] Error 1
lt@ubuntu:~/u-boot/u-boot-1.1.6$
回复 支持 反对

使用道具 举报

8

主题

1463

帖子

4537

积分

版主

Rank: 7Rank: 7Rank: 7

积分
4537
发表于 3 天前 | 显示全部楼层
hard 发表于 2019-9-17 10:07
直接在ubuntu的终端

版本为4.3.2

我刚刚编译了一下,按照你说的用4.3.2的编译器
4.3.2编译器里边是 arm-none-linux-gnueabi-gcc
Makefile 里指定的是arm-linux-gnueabi-,因此我修改了一下makefile 修改成 arm-none-linux-gnueabi-
make 通过了
我是百问网www.100ask.org答疑助手,有关技术问题请与我联系。
韦东山视频开发板购买店铺:https://100ask.taobao.com/
微信公众平台:baiwenkeji
回复 支持 反对

使用道具 举报

2

主题

13

帖子

95

积分

注册会员

Rank: 2

积分
95
 楼主| 发表于 前天 21:40 | 显示全部楼层
百问网-李老师 发表于 2019-9-17 18:38
我刚刚编译了一下,按照你说的用4.3.2的编译器
4.3.2编译器里边是 arm-none-linux-gnueabi-gcc
Makefil ...

这个有点懵

readme文件截图

readme文件截图
回复 支持 反对

使用道具 举报

技术支持
在线咨询
咨询热线
0755-86200561
微信扫一扫
获取更多资讯!

Archiver|小黑屋|百问linux嵌入式论坛     

GMT+8, 2019-9-20 12:37 , Processed in 0.169415 second(s), 12 queries , File On.

Powered by Discuz! X3.3 Licensed

© 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

快速回复 返回顶部 返回列表