We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hi,
I have a static library built with arm-none-eabi-gcc (for Cortex-M4) that works fine when linked with ld.
But after I linked it using armlink, the functionality was broken.
I want to ask if some considerations need to be repected when supplying gcc obj code to armlink?
PS:
The static library uses hardware floating point and was built with the following options:
CFLAGS += -fdata-sections -ffunction-sections -fvisibility=hidden -Os
CFLAGS += -mlittle-endian -mthumb -mcpu=cortex-m4 -mthumb-interwork
CFLAGS += -mfloat-abi=hard -DFPV4_SP_D16 -mfp16-format=ieee -mfpu=fpv4-sp-d16
CFLAGS += -fsingle-precision-constant -ffast-math -DUSE_LIB_SQRTF
CFLAGS += -Wall -Wextra
>From Keil part, I use the following options:
for armcc:
--littleend --fp16_format=none --thumb --wchar32
for armlink:
--cpu=Cortex-M4 --remove
Thanks.
Can you define more clearly what you mean by "the functionality was broken"?
Did it fail to link, or did it link successfully but your program is acting strangely?
--Matt
Hi Matt,
Sorry for my late response, I haven't received a notification e-mail on your reply!
Links Ok, but the library is not giving the normal results.