* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod'
@ 2016-03-11 8:00 Jagan Teki
2016-03-12 0:32 ` Simon Glass
0 siblings, 1 reply; 9+ messages in thread
From: Jagan Teki @ 2016-03-11 8:00 UTC (permalink / raw)
To: u-boot
Hi,
Did anyone encounter this issue? please let me know for any inputs.
arm: + venice2
+drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write':
+build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to
`__aeabi_ldivmod'
+arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion
fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696
+arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt'
not found in the linker script
+arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation
+make[1]: *** [u-boot] Error 1
+make: *** [sub-make] Error 2
thanks!
--
Jagan.
^ permalink raw reply [flat|nested] 9+ messages in thread* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-11 8:00 [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' Jagan Teki @ 2016-03-12 0:32 ` Simon Glass 2016-03-14 17:32 ` Jagan Teki 0 siblings, 1 reply; 9+ messages in thread From: Simon Glass @ 2016-03-12 0:32 UTC (permalink / raw) To: u-boot +Stephen Hi Jagan, On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> wrote: > > Hi, > > Did anyone encounter this issue? please let me know for any inputs. > > arm: + venice2 > +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': > +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to > `__aeabi_ldivmod' > +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion > fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 > +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' > not found in the linker script > +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation > +make[1]: *** [u-boot] Error 1 > +make: *** [sub-make] Error 2 Are you using 64-bit division? Tegra uses the private libgcc. This patch might help: http://patchwork.ozlabs.org/patch/592628/ Regards, Simon ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-12 0:32 ` Simon Glass @ 2016-03-14 17:32 ` Jagan Teki 2016-03-14 18:14 ` Stephen Warren 0 siblings, 1 reply; 9+ messages in thread From: Jagan Teki @ 2016-03-14 17:32 UTC (permalink / raw) To: u-boot Hi Simon, On 12 March 2016 at 06:02, Simon Glass <sjg@chromium.org> wrote: > +Stephen > > Hi Jagan, > > On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> wrote: >> >> Hi, >> >> Did anyone encounter this issue? please let me know for any inputs. >> >> arm: + venice2 >> +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': >> +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to >> `__aeabi_ldivmod' >> +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion >> fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 >> +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' >> not found in the linker script >> +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation >> +make[1]: *** [u-boot] Error 1 >> +make: *** [sub-make] Error 2 > > Are you using 64-bit division? Tegra uses the private libgcc. This > patch might help: Yes, I'm using 64-bit. > > http://patchwork.ozlabs.org/patch/592628/ Still the same issue. thanks! -- Jagan. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-14 17:32 ` Jagan Teki @ 2016-03-14 18:14 ` Stephen Warren 2016-03-16 14:27 ` Jagan Teki 0 siblings, 1 reply; 9+ messages in thread From: Stephen Warren @ 2016-03-14 18:14 UTC (permalink / raw) To: u-boot On 03/14/2016 11:32 AM, Jagan Teki wrote: > Hi Simon, > > On 12 March 2016 at 06:02, Simon Glass <sjg@chromium.org> wrote: >> +Stephen >> >> Hi Jagan, >> >> On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> wrote: >>> >>> Hi, >>> >>> Did anyone encounter this issue? please let me know for any inputs. >>> >>> arm: + venice2 >>> +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': >>> +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to >>> `__aeabi_ldivmod' >>> +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion >>> fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 >>> +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' >>> not found in the linker script >>> +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation >>> +make[1]: *** [u-boot] Error 1 >>> +make: *** [sub-make] Error 2 >> >> Are you using 64-bit division? Tegra uses the private libgcc. This >> patch might help: > > Yes, I'm using 64-bit. > >> http://patchwork.ozlabs.org/patch/592628/ > > Still the same issue. If I start with v2016.03, and apply the following patch, I can reproduce this issue when building venice2 (a 32-bit Tegra build) but not p2371-2180 (a 64-bit Tegra build): diff --git a/arch/arm/mach-tegra/board2.c b/arch/arm/mach-tegra/board2.c index ac274e17e8bd..9b1a4112a0b1 100644 --- a/arch/arm/mach-tegra/board2.c +++ b/arch/arm/mach-tegra/board2.c @@ -235,9 +235,13 @@ __weak void pin_mux_mmc(void) { } +uint64_t a = 200; +uint64_t b = 5; + /* this is a weak define that we are overriding */ int board_mmc_init(bd_t *bd) { + printf("a/b = %llu\n", a / b); debug("%s called\n", __func__); /* Enable muxes, etc. for SDMMC controllers */ However, if I apply the patch Simon mentioned above, the problem is fixed. Are you sure you applied that patch correctly? ^ permalink raw reply related [flat|nested] 9+ messages in thread
* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-14 18:14 ` Stephen Warren @ 2016-03-16 14:27 ` Jagan Teki 2016-03-16 15:34 ` Stephen Warren 0 siblings, 1 reply; 9+ messages in thread From: Jagan Teki @ 2016-03-16 14:27 UTC (permalink / raw) To: u-boot On 14 March 2016 at 23:44, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 03/14/2016 11:32 AM, Jagan Teki wrote: >> >> Hi Simon, >> >> On 12 March 2016 at 06:02, Simon Glass <sjg@chromium.org> wrote: >>> >>> +Stephen >>> >>> Hi Jagan, >>> >>> On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> wrote: >>>> >>>> >>>> Hi, >>>> >>>> Did anyone encounter this issue? please let me know for any inputs. >>>> >>>> arm: + venice2 >>>> +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': >>>> +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to >>>> `__aeabi_ldivmod' >>>> +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion >>>> fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 >>>> +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' >>>> not found in the linker script >>>> +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation >>>> +make[1]: *** [u-boot] Error 1 >>>> +make: *** [sub-make] Error 2 >>> >>> >>> Are you using 64-bit division? Tegra uses the private libgcc. This >>> patch might help: >> >> >> Yes, I'm using 64-bit. >> >>> http://patchwork.ozlabs.org/patch/592628/ >> >> >> Still the same issue. > > > If I start with v2016.03, and apply the following patch, I can reproduce > this issue when building venice2 (a 32-bit Tegra build) but not p2371-2180 > (a 64-bit Tegra build): > > diff --git a/arch/arm/mach-tegra/board2.c b/arch/arm/mach-tegra/board2.c > index ac274e17e8bd..9b1a4112a0b1 100644 > --- a/arch/arm/mach-tegra/board2.c > +++ b/arch/arm/mach-tegra/board2.c > @@ -235,9 +235,13 @@ __weak void pin_mux_mmc(void) > { > } > > +uint64_t a = 200; > +uint64_t b = 5; > + > /* this is a weak define that we are overriding */ > int board_mmc_init(bd_t *bd) > { > + printf("a/b = %llu\n", a / b); > debug("%s called\n", __func__); > > /* Enable muxes, etc. for SDMMC controllers */ > > However, if I apply the patch Simon mentioned above, the problem is fixed. > Are you sure you applied that patch correctly? Yeah, I tried this on latest as well, same issue. -- Jagan. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-16 14:27 ` Jagan Teki @ 2016-03-16 15:34 ` Stephen Warren 2016-03-17 5:48 ` Jagan Teki 0 siblings, 1 reply; 9+ messages in thread From: Stephen Warren @ 2016-03-16 15:34 UTC (permalink / raw) To: u-boot On 03/16/2016 08:27 AM, Jagan Teki wrote: > On 14 March 2016 at 23:44, Stephen Warren <swarren@wwwdotorg.org> wrote: >> On 03/14/2016 11:32 AM, Jagan Teki wrote: >>> >>> Hi Simon, >>> >>> On 12 March 2016 at 06:02, Simon Glass <sjg@chromium.org> wrote: >>>> >>>> +Stephen >>>> >>>> Hi Jagan, >>>> >>>> On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> wrote: >>>>> >>>>> >>>>> Hi, >>>>> >>>>> Did anyone encounter this issue? please let me know for any inputs. >>>>> >>>>> arm: + venice2 >>>>> +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': >>>>> +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to >>>>> `__aeabi_ldivmod' >>>>> +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion >>>>> fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 >>>>> +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' >>>>> not found in the linker script >>>>> +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation >>>>> +make[1]: *** [u-boot] Error 1 >>>>> +make: *** [sub-make] Error 2 >>>> >>>> >>>> Are you using 64-bit division? Tegra uses the private libgcc. This >>>> patch might help: >>> >>> Yes, I'm using 64-bit. >>> >>>> http://patchwork.ozlabs.org/patch/592628/ >>> >>> Still the same issue. ... >> However, if I apply the patch Simon mentioned above, the problem is fixed. >> Are you sure you applied that patch correctly? > > Yeah, I tried this on latest as well, same issue. Perhaps you could share the local patches that are triggering the problem? ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-16 15:34 ` Stephen Warren @ 2016-03-17 5:48 ` Jagan Teki 2016-03-17 16:18 ` Stephen Warren 0 siblings, 1 reply; 9+ messages in thread From: Jagan Teki @ 2016-03-17 5:48 UTC (permalink / raw) To: u-boot On 16 March 2016 at 21:04, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 03/16/2016 08:27 AM, Jagan Teki wrote: >> >> On 14 March 2016 at 23:44, Stephen Warren <swarren@wwwdotorg.org> wrote: >>> >>> On 03/14/2016 11:32 AM, Jagan Teki wrote: >>>> >>>> >>>> Hi Simon, >>>> >>>> On 12 March 2016 at 06:02, Simon Glass <sjg@chromium.org> wrote: >>>>> >>>>> >>>>> +Stephen >>>>> >>>>> Hi Jagan, >>>>> >>>>> On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> wrote: >>>>>> >>>>>> >>>>>> >>>>>> Hi, >>>>>> >>>>>> Did anyone encounter this issue? please let me know for any inputs. >>>>>> >>>>>> arm: + venice2 >>>>>> +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': >>>>>> +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to >>>>>> `__aeabi_ldivmod' >>>>>> +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion >>>>>> fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 >>>>>> +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' >>>>>> not found in the linker script >>>>>> +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid >>>>>> operation >>>>>> +make[1]: *** [u-boot] Error 1 >>>>>> +make: *** [sub-make] Error 2 >>>>> >>>>> >>>>> >>>>> Are you using 64-bit division? Tegra uses the private libgcc. This >>>>> patch might help: >>>> >>>> >>>> Yes, I'm using 64-bit. >>>> >>>>> http://patchwork.ozlabs.org/patch/592628/ >>>> >>>> >>>> Still the same issue. > > ... >>> >>> However, if I apply the patch Simon mentioned above, the problem is >>> fixed. >>> Are you sure you applied that patch correctly? >> >> >> Yeah, I tried this on latest as well, same issue. > > > Perhaps you could share the local patches that are triggering the problem? 54: config: Enable SPI-NOR framework arm: + chromebook_jerry +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to `__aeabi_ldivmod' +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' not found in the linker script +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid operation +make[1]: *** [u-boot] Error 1 +make: *** [sub-make] Error 2 This is the spi-nor.c file http://git.denx.de/?p=u-boot/u-boot-spi.git;a=blob;f=drivers/mtd/spi-nor/spi-nor.c;h=6166b62e595c6620bd3407788d705168e0bd6b2c;hb=refs/heads/spi-nor-test -- Jagan. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-17 5:48 ` Jagan Teki @ 2016-03-17 16:18 ` Stephen Warren 2016-05-01 23:12 ` Simon Glass 0 siblings, 1 reply; 9+ messages in thread From: Stephen Warren @ 2016-03-17 16:18 UTC (permalink / raw) To: u-boot On 03/16/2016 11:48 PM, Jagan Teki wrote: > On 16 March 2016 at 21:04, Stephen Warren <swarren@wwwdotorg.org> wrote: >> On 03/16/2016 08:27 AM, Jagan Teki wrote: >>> On 14 March 2016 at 23:44, Stephen Warren <swarren@wwwdotorg.org> wrote: >>>> On 03/14/2016 11:32 AM, Jagan Teki wrote: >>>>> On 12 March 2016 at 06:02, Simon Glass <sjg@chromium.org> wrote: >>>>>> On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> wrote: >>>>>>> Did anyone encounter this issue? please let me know for any inputs. >>>>>>> >>>>>>> arm: + venice2 >>>>>>> +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': >>>>>>> +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to >>>>>>> `__aeabi_ldivmod' >>>>>>> +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion >>>>>>> fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 >>>>>>> +arm-unknown-linux-gnueabi-ld.bfd: error: required section '.rel.plt' >>>>>>> not found in the linker script >>>>>>> +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid >>>>>>> operation >>>>>>> +make[1]: *** [u-boot] Error 1 >>>>>>> +make: *** [sub-make] Error 2 >>>>>> >>>>>> Are you using 64-bit division? Tegra uses the private libgcc. This >>>>>> patch might help: >>>>> >>>>> Yes, I'm using 64-bit. >>>>> >>>>>> http://patchwork.ozlabs.org/patch/592628/ ... >> Perhaps you could share the local patches that are triggering the problem? ... > This is the spi-nor.c file > http://git.denx.de/?p=u-boot/u-boot-spi.git;a=blob;f=drivers/mtd/spi-nor/spi-nor.c;h=6166b62e595c6620bd3407788d705168e0bd6b2c;hb=refs/heads/spi-nor-test I can reproduce this when building venice2 in u-boot-spi/spi-nor-test, and indeed the patch that Simon linked to doesn't help. That's because Simon's patch implements __aeabi_uldivmod whereas the linker failure is due to __aeabi_ldivmod (without the u). Simon, is it easy for you to bring in __aeabi_ldivmod from the same place? FWIW, I hacked _uldivmod.S to provide a dummy symbol for __aeabi_ldivmod and the link succeeded, so I think that's currently the only missing symbol. I only tested the venice2 build though. ^ permalink raw reply [flat|nested] 9+ messages in thread
* [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' 2016-03-17 16:18 ` Stephen Warren @ 2016-05-01 23:12 ` Simon Glass 0 siblings, 0 replies; 9+ messages in thread From: Simon Glass @ 2016-05-01 23:12 UTC (permalink / raw) To: u-boot Hi, On 17 March 2016 at 10:18, Stephen Warren <swarren@wwwdotorg.org> wrote: > On 03/16/2016 11:48 PM, Jagan Teki wrote: >> >> On 16 March 2016 at 21:04, Stephen Warren <swarren@wwwdotorg.org> wrote: >>> >>> On 03/16/2016 08:27 AM, Jagan Teki wrote: >>>> >>>> On 14 March 2016 at 23:44, Stephen Warren <swarren@wwwdotorg.org> wrote: >>>>> >>>>> On 03/14/2016 11:32 AM, Jagan Teki wrote: >>>>>> >>>>>> On 12 March 2016 at 06:02, Simon Glass <sjg@chromium.org> wrote: >>>>>>> >>>>>>> On 11 March 2016 at 01:00, Jagan Teki <jagannadh.teki@gmail.com> >>>>>>> wrote: >>>>>>>> >>>>>>>> Did anyone encounter this issue? please let me know for any inputs. >>>>>>>> >>>>>>>> arm: + venice2 >>>>>>>> +drivers/mtd/spi-nor/built-in.o: In function `spi_nor_write': >>>>>>>> +build/../drivers/mtd/spi-nor/spi-nor.c:585: undefined reference to >>>>>>>> `__aeabi_ldivmod' >>>>>>>> +arm-unknown-linux-gnueabi-ld.bfd: BFD (GNU Binutils) 2.24 assertion >>>>>>>> fail /home/tony/buildall/src/binutils/bfd/elf32-arm.c:7696 >>>>>>>> +arm-unknown-linux-gnueabi-ld.bfd: error: required section >>>>>>>> '.rel.plt' >>>>>>>> not found in the linker script >>>>>>>> +arm-unknown-linux-gnueabi-ld.bfd: final link failed: Invalid >>>>>>>> operation >>>>>>>> +make[1]: *** [u-boot] Error 1 >>>>>>>> +make: *** [sub-make] Error 2 >>>>>>> >>>>>>> >>>>>>> Are you using 64-bit division? Tegra uses the private libgcc. This >>>>>>> patch might help: >>>>>> >>>>>> >>>>>> Yes, I'm using 64-bit. >>>>>> >>>>>>> http://patchwork.ozlabs.org/patch/592628/ > > ... >>> >>> Perhaps you could share the local patches that are triggering the >>> problem? > > ... >> >> This is the spi-nor.c file >> >> http://git.denx.de/?p=u-boot/u-boot-spi.git;a=blob;f=drivers/mtd/spi-nor/spi-nor.c;h=6166b62e595c6620bd3407788d705168e0bd6b2c;hb=refs/heads/spi-nor-test > > > I can reproduce this when building venice2 in u-boot-spi/spi-nor-test, and > indeed the patch that Simon linked to doesn't help. That's because Simon's > patch implements __aeabi_uldivmod whereas the linker failure is due to > __aeabi_ldivmod (without the u). > > Simon, is it easy for you to bring in __aeabi_ldivmod from the same place? > > FWIW, I hacked _uldivmod.S to provide a dummy symbol for __aeabi_ldivmod and > the link succeeded, so I think that's currently the only missing symbol. I > only tested the venice2 build though. Not that I can see, sorry. I suppose it is possible to fix up the sign but I don't have code to do it. Regards, Simon ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2016-05-01 23:12 UTC | newest] Thread overview: 9+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2016-03-11 8:00 [U-Boot] buildman: arm: undefined reference to `__aeabi_ldivmod' Jagan Teki 2016-03-12 0:32 ` Simon Glass 2016-03-14 17:32 ` Jagan Teki 2016-03-14 18:14 ` Stephen Warren 2016-03-16 14:27 ` Jagan Teki 2016-03-16 15:34 ` Stephen Warren 2016-03-17 5:48 ` Jagan Teki 2016-03-17 16:18 ` Stephen Warren 2016-05-01 23:12 ` Simon Glass
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox