Hi All,

Below is the last lines of the output from my 'make tooldir=/usr'. I am
a little perplexed as to why it is trying to write to the text section
of this library after the lib has been created. I have also included a
'readelf -l' of the library taken from outside my jail. I am thinking
that a patch to the Makefile is probably in order although I would
rather understand the issue first.

By my reading of the readelf output there is no way of using the
standard tools to write into the .text section as it is in segment 00,
which is flagged as read and execute. I must admit that I am not
familiar with dealing with C issues of this depth so any insight or
corrections to my reasoning would be appreciated.

In short my belief is that we may need to patch the Makefile to move the
.text section probably into either segment 01 or 02, but my knowledge
here is rudimentary.

Kind Regards,
Brian.


/sources/butterfly-build/./gcc/xgcc -B/sources/butterfly-build/./gcc/
-B/usr/i686-pc-linux-gnu/bin/ -B/usr/i686-pc-linux-gnu/lib/ -isystem
/usr/i686-pc-linux-gnu/include -isystem
/usr/i686-pc-linux-gnu/sys-include -L/sources/butterfly-build/./ld -O2
-O2 -g -O2   -DIN_GCC    -W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition  -isystem ./include  -I. -I.
-I../../butterfly-toolchain/gcc -I../../butterfly-toolchain/gcc/.
-I../../butterfly-toolchain/gcc/../include -I./../intl
-I../../butterfly-toolchain/gcc/../libcpp/include   -g0
-finhibit-size-directive -fno-inline-functions -fno-exceptions
-fno-stack-protector -fno-zero-initialized-in-bss -fno-unit-at-a-time 
-fno-PIE -fPIC -fno-omit-frame-pointer \
          -c ../../butterfly-toolchain/gcc/crtstuff.c -DCRT_BEGIN \
          -o crtbegin.o
Can't modify /sources/butterfly-build/bfd/.libs/libbfd-2.17.so's text
section. Use GCC option -fPIC for shared objects, please.
make[2]: *** [crtbegin.o] Error 1
make[2]: Leaving directory `/sources/butterfly-build/gcc'
make[1]: *** [all-gcc] Error 2
make[1]: Leaving directory `/sources/butterfly-build'
make: *** [all] Error 2


# readelf -l /mnt/hlfs/sources/butterfly-build/bfd/.libs/libbfd-2.17.so

Elf file type is DYN (Shared object file)
Entry point 0x10970
There are 7 program headers, starting at offset 52

Program Headers:
  Type           Offset   VirtAddr   PhysAddr   FileSiz MemSiz  Flg Align
  LOAD           0x000000 0x00000000 0x00000000 0x857d4 0x857d4 R E 0x1000
  LOAD           0x086664 0x00086664 0x00086664 0x05d60 0x09f6c RW  0x1000
  DYNAMIC        0x08b85c 0x0008b85c 0x0008b85c 0x000e8 0x000e8 RW  0x4
  GNU_EH_FRAME   0x08575c 0x0008575c 0x0008575c 0x0001c 0x0001c R   0x4
  GNU_STACK      0x000000 0x00000000 0x00000000 0x00000 0x00000 RW  0x4
  GNU_RELRO      0x086664 0x00086664 0x00086664 0x0599c 0x0599c R   0x1
  LOOS+5041580   0x000000 0x00000000 0x00000000 0x00000 0x00000     0x4

 Section to Segment mapping:
  Segment Sections...
   00     .hash .dynsym .dynstr .gnu.version .gnu.version_r .rel.dyn
.rel.plt .init .plt .text .fini .rodata .eh_frame_hdr .eh_frame
   01     .ctors .dtors .jcr .data.rel.ro .dynamic .got .data .bss
   02     .dynamic
   03     .eh_frame_hdr
   04
   05     .ctors .dtors .jcr .data.rel.ro .dynamic .got
   06

-- 
http://linuxfromscratch.org/mailman/listinfo/hlfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page

Reply via email to