[U-Boot] Undefined reference to `boot_relocate_fdt'

Jerry Van Baren gvb.uboot at gmail.com
Tue Nov 4 01:43:15 CET 2008


Juan Pablo Gómez wrote:
> His I'm trying to build u-boot for a xupv2p board, but with the newest
> version this is appearing during the make :
> *
> $make xupv2p_config
> $make*
> 
> -Map u-boot.map -o u-boot
> common/libcommon.a(cmd_bootm.o): In function `do_bootm_subcommand':
> /home/juanwalker/software/projects/u-boot/common/cmd_bootm.c:505: undefined
> reference to `boot_relocate_fdt'
> make: *** [u-boot] Error 1

Hi Juan,

That is odd.  It works for me on a PowerPC target (I don't have 
microblaze support set up).  Your config has CONFIG_LIBFDT enabled, 
which is why do_bootm_subcommand is calling boot_relocate_fdt.  I don't 
see any obvious reason why boot_relocate_fdt isn't in your build (it is 
defined in common/image.c and enabled by CONFIG_LIBFDT).

One thing you could do is to save your make output into a log file
   make > make.log
and then find the line that compiles image.c (it likely will be the 
*second* time, the first time is making host tools).  Cut and paste it 
onto the command line (in the common/ subdirectory) BUT CHANGE the flags 
at the end of the gcc command from:
   -c -o image.o image.c
to:
   -C -E -o image.pp image.c
This stops after running the preprocessor and puts the result in 
"image.pp".  Maybe you can get a clue what happened to your 
boot_relocate_fdt() from that???

Best regards,
gvb


More information about the U-Boot mailing list