Intel® C++ Compiler
Community support and assistance for creating C++ code that runs on platforms based on Intel® processors.

unable to get _start at 0x00000000

frnksml
Beginner
407 Views
Hi,

I'm using icc.10.1.016b.i686-linux

I need to have _start at 0x00000000
In my symbols table, I keep getting _start always at some offset from 0.

Snippet of my linker script file.

/* Default linker script, for normal executables */
OUTPUT_FORMAT("elf32-i386", "elf32-i386",
"elf32-i386")
OUTPUT_ARCH(i386)
ENTRY(_start)
SEARCH_DIR("/sw/contrib/packages/binutils/2.17/i686-pc-linux/lib"); SEARCH_DIR("/sw/contrib
/packages/binutils/2.17/lib"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR
("/usr/lib");

SECTIONS
{
/* Read-only sections, merged into text segment: */
/* . = 0x00 + SIZEOF_HEADERS; */
. = 0x0000;
PROVIDE (_text = .);
PROVIDE (xen_start = .);
.xen_start : { *(.xen_start) }
. = 0x1000;
.xen_shared_info : { *(.xen_shared_info) }
. = 0x2000;
.xen_hypercall_page : { *(.xen_hypercall_page) }
. = 0x3000;
.xen_trap_tables : { *(.xen_trap_tables) }
.text : { *(.text) }
.hash : { *(.hash) }
.dynsym : { *(.dynsym) }
.dynstr : { *(.dynstr) }
.gnu.version : { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.init : { *(.rel.init) }
.rela.init : { *(.rela.init) }
.rel.text : { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
.rela.text : { *(.rela.text .rela.text.* .rela.gnu.linkonce.t.*) }
.rel.fini : { *(.rel.fini) }
.rela.fini : { *(.rela.fini) }


Snippet of my generated symbols file.
00000000 N .debug_info_seg
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_info_seg0
00000000 N .debug_line_seg8
00000000 N .debug_line_seg8
00000000 N .debug_line_seg9
00000000 N .debug_line_seg9
00000020 a ES
00000024 a ORIG_EAX
00000028 a EIP
0000002c a CS
0000005b N .debug_line_seg8
0000005c N .debug_frame_seg
00000061 N .debug_line_seg9
00000065 N .debug_line_seg3
00000065 N .debug_line_seg8
00000067 N .debug_line_seg7
0000006a N .debug_line_seg1
0000006b N .debug_line_seg1
00000071 N .debug_line_seg5
00000074 N divide_error
00000075 N .debug_line_seg0
00000075 N .debug_line_seg10
00000075 N .debug_line_seg11
00000075 N .debug_line_seg7
00000075 N .debug_line_seg9
00000076 N .debug_line_seg15
00000078 N .debug_line_seg7
00000079 N .debug_line_seg8
0000007b N .debug_line_seg4
0000007b N .debug_line_seg6
0000007b n do_exception
000000aa n ret_from_exception
000000ae N .debug_line_seg0
000000b5 N .debug_line_seg0
000000b7 N .debug_line_seg8
000000be N .debug_line_seg0
000000be N hypervisor_callback
000000bf N .debug_line_seg1
000000c1 N .debug_line_seg5
000000c3 N .debug_line_seg2
000000cb N .debug_line_seg1
000000cd N .debug_line_seg5
000000d9 N .debug_line_seg0
000000d9 N .debug_line_seg1
000000da N .debug_line_seg
000000e1 N .debug_line_seg3
000000e4 N .debug_line_seg0
000000e9 N .debug_line_seg0
000000ec N .debug_line_seg7
000000ef N .debug_line_seg5
000000f7 N .debug_line_seg13
000000f8 N .debug_line_seg3
000000f9 N .debug_line_seg12
000000fb N .debug_line_seg7
000000fd T _start

I need to get _start at 0x0.
Anything obviously wrong in my linker script file? Any other ideas?



0 Kudos
3 Replies
Lingfeng_C_Intel
Employee
407 Views

Hi frnksml,
I am investigating your issue now. would you mind to forward a sample file to me so that I can do some test here? My email address is wise.chen@intel.com.

Thanks,
Wise

0 Kudos
Lingfeng_C_Intel
Employee
407 Views
Hi frnksml,


I got some information that this is a linker question.
Could you send an email to binutils mailing list: http://sources.redhat.com/binutils/?
It can help for you.

Good luck!
Wise Chen

0 Kudos
Sukruth_H_Intel
Employee
407 Views
Hi frnksml,
Were you able to solve this linker problem? If so please do let me know. You can check with the latest 12.1 compiler to see whether this problem was solved or not.

Thanks & Regards,
Sukruth H.V
0 Kudos
Reply