Help! arm-wince-pe undefined references.

pedro alves pedro.alves at domatica.pt
Sat Jul 29 03:23:13 PDT 2006


Hi Chad,

Chad J wrote:

> As for
> 
> `_D5win3222os_query_staticdatasegFPPvPkZv':
> /root/gcc/gdc-4.0.3/libphobos/internal/gc/win32.d:134: undefined 
> reference to `_data_start__'
> /root/gcc/gdc-4.0.3/libphobos/internal/gc/win32.d:134: undefined 
> reference to `_bss_end__'
> 
> it comes from here:
> 
> version (GNU)
> {
> // This is MinGW specific
> extern (C)
> {
>     // TODO: skip the .rdata between .data and .bss?
>     extern int _data_start__;
>     extern int _bss_end__;
> }
> 
> void os_query_staticdataseg(void **base, uint *nbytes)
> {
>     *base = cast(void *)&_data_start__;
>     *nbytes = cast(uint)(cast(char *)&_bss_end__ - cast(char 
> *)&_data_start__);
> }
> 


main.exe is a simple hello world type app.

[~]>arm-wince-pe-nm main.exe | grep data_start
00012000 D __data_start__

[~]>arm-wince-pe-nm main.exe | grep data_end
00012004 D __data_end__

Looks like underscoring strikes again.

Try:
      extern int __data_start__;
      extern int __bss_end__;


Cheers,
Pedro Alves



More information about the D.gnu mailing list