[haiku-bugs] Re: [Haiku] #14842: Error building bootstraping libicuio while cross-compiling ARM on Ubuntu 18.04

  • From: "Haiku" <trac@xxxxxxxxxxxx>
  • To: undisclosed-recipients: ;
  • Date: Fri, 15 Feb 2019 15:12:11 -0000

#14842: Error building bootstraping libicuio while cross-compiling ARM on Ubuntu
18.04
----------------------------+----------------------------
   Reporter:  pemdp         |      Owner:  bonefish
       Type:  bug           |     Status:  new
   Priority:  normal        |  Milestone:  Unscheduled
  Component:  Build System  |    Version:  R1/Development
 Resolution:                |   Keywords:
 Blocked By:                |   Blocking:
Has a Patch:  0             |   Platform:  arm
----------------------------+----------------------------

Comment (by kallisti5):

 Here's a -fno-pic vs undefined pic flags:

 {{{
 root@1fbcb1be4cfc:/work/generated.arm/cross-tools-arm/bin# ./arm-unknown-
 haiku-g++ -fno-pic -Og foobar.cpp -c -o foobar-nopic.o
 root@1fbcb1be4cfc:/work/generated.arm/cross-tools-arm/bin# ./arm-unknown-
 haiku-g++ -Og foobar.cpp -c -o foobar-pic.o
 root@1fbcb1be4cfc:/work/generated.arm/cross-tools-arm/bin# ./arm-unknown-
 haiku-objdump -dr foobar-pic.o

 foobar-pic.o:     file format elf32-littlearm


 Disassembly of section .text:

 00000000 <_Z6foobarv>:
    0:   e59f3020        ldr     r3, [pc, #32]   ; 28 <_Z6foobarv+0x28>
    4:   e08f3003        add     r3, pc, r3
    8:   e59f201c        ldr     r2, [pc, #28]   ; 2c <_Z6foobarv+0x2c>
    c:   e7932002        ldr     r2, [r3, r2]
   10:   e5920000        ldr     r0, [r2]
   14:   e59f2014        ldr     r2, [pc, #20]   ; 30 <_Z6foobarv+0x30>
   18:   e7933002        ldr     r3, [r3, r2]
   1c:   e5933000        ldr     r3, [r3]
   20:   e0800003        add     r0, r0, r3
   24:   e12fff1e        bx      lr
   28:   0000001c        .word   0x0000001c
                         28: R_ARM_GOTPC _GLOBAL_OFFSET_TABLE_
         ...
                         2c: R_ARM_GOT32 foo
                         30: R_ARM_GOT32 bar


 root@1fbcb1be4cfc:/work/generated.arm/cross-tools-arm/bin# ./arm-unknown-
 haiku-objdump -dr foobar-nopic.o

 foobar-nopic.o:     file format elf32-littlearm


 Disassembly of section .text:

 00000000 <_Z6foobarv>:
    0:   e3003000        movw    r3, #0
                         0: R_ARM_MOVW_ABS_NC    foo
    4:   e3403000        movt    r3, #0
                         4: R_ARM_MOVT_ABS       foo
    8:   e5930000        ldr     r0, [r3]
    c:   e3003000        movw    r3, #0
                         c: R_ARM_MOVW_ABS_NC    bar
   10:   e3403000        movt    r3, #0
                         10: R_ARM_MOVT_ABS      bar
   14:   e5933000        ldr     r3, [r3]
   18:   e0800003        add     r0, r0, r3
   1c:   e12fff1e        bx      lr
 }}}

-- 
Ticket URL: <https://dev.haiku-os.org/ticket/14842#comment:12>
Haiku <https://dev.haiku-os.org>
The Haiku operating system.

Other related posts: