Unable to sprintf float value with redlib(semihost-nf)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Unable to sprintf float value with redlib(semihost-nf)

2,101 Views
akimata
Contributor IV

Hi,

I'm struggling to sprintf a float value with redlib(semihost-nf). What i've done:

- set PRINTF_FLOAT_ENABLE=1

- set SCANF_FLOAT_ENABLE=1

- removed CR_INTEGER_PRINTF

Example code:

char text_buffer[64]

snprintf(text_buffer, sizeof(text_buffer), "declination: %.2f\r\n" , 5.25);

Any ideas what else might be wrong?

It's working on newlib(semihost) but semihosting on that lib is just too slow and i would rather to stay on redlib.

0 Kudos
7 Replies

1,955 Views
akimata
Contributor IV

That's what i got in the settings. The weirdest part is that i created new project and it's working just fine there, but i cannot get it to work on my project so i just generated whole new project and copied files there and problem solved!. Still have no clue why didn't it work on my last project tho.

0 Kudos

1,956 Views
zhiqunhu
Contributor III

Try to remove CR_INTEGER_PRINTF in Preprocessor configuration.

0 Kudos

1,956 Views
ErichStyger
Senior Contributor V

could it be that you changed something in the linker settings? I would compare those.

0 Kudos

1,956 Views
ErichStyger
Senior Contributor V

choose a different redlib library. nf means 'no-float'.

0 Kudos

1,956 Views
ErichStyger
Senior Contributor V

correction: nf means no-files (not no-float)

0 Kudos

1,956 Views
akimata
Contributor IV

I tried also redlib(semihost) and redlib(semihost-mb) and noone of them works.

0 Kudos

1,956 Views
ErichStyger
Senior Contributor V

this is what I have:

pastedImage_1.png

pastedImage_2.png

pastedImage_3.png

0 Kudos