[En-Nut-Discussion] But in launchpad toolchain and possibly others as well?

Harald Kipp harald.kipp at egnite.de
Wed Nov 27 10:27:54 CET 2013


On 27.11.2013 00:42, Ole Reinhardt wrote:
> Am 26.11.2013 22:28, schrieb Ole Reinhardt:
>> If I try the following:
>>
>> #include <ctype.h>
>>
>>
>> printf("Test: %c %c %c, %d %d %d\n",
>>        'c', tolower('C'), toupper('c'),
>>        'c', tolower('C'), toupper('c'));
>>
>>
>> I get the following output:
>>
>> Test: c C c, 99 67 99

Ole, what happens if you add *(.data.*) to the data region in the linker
script?

/* Explicitly initialized data goes into the .data section. */
.data :
{
  . = ALIGN(4);
  *(.data);
  . = ALIGN(4);
  *(.data.*);
  . = ALIGN(4);
  /* Marks the end of non relocatable code and data. */
  PROVIDE (__data_end = .);
} > REGION_DATA

Does it fix your problem? At least I'm able to link the application now
and the result of

 printf("Test: %c %c %c, %d %d %d\n",
   'c', tolower('C'), toupper('c'),
   'c', tolower('C'), toupper('c'));

is correctly displayed as

 Test: c c C, 99 99 67

Regards,

Harald



More information about the En-Nut-Discussion mailing list