Andy's Workshop Forums

General Category => stm32plus C++ library => Topic started by: flano on May 03, 2015, 12:45:10 am

Title: Creating New Fonts
Post by: flano on May 03, 2015, 12:45:10 am
Andy,

Is there any doco on creating new fonts with the fontconv.exe and adding them to the library?

I have managed to create the .h, .cpp and .xml files and have added them into the directories as per the existing fonts. I have also added them to tft.h.

When I try to use the font I get the following compile error.


'Building target: PowerSupply.elf'
'Invoking: Cross ARM C++ Linker'
arm-none-eabi-g++ -mcpu=cortex-m3 -mthumb -O0 -fmessage-length=0 -fsigned-char -ffunction-sections -fdata-sections  -g3 -T "C:\Users\mlanagan\Documents\Electronics\PowerSupply\Code\PowerSupply\system\f1hd\Linker.ld" -Xlinker --gc-sections -LC:\Cygwin\home\mlanagan\stm32plus\lib\build\debug-f1hd-8000000 -Wl,-Map,"PowerSupply.map" --specs=nosys.specs -o "PowerSupply.elf"  ./system/f1hd/Startup.o ./system/f1hd/System.o  ./system/LibraryHacks.o  ./PowerSupply.o   -lstm32plus-debug-f1hd-8000000
./PowerSupply.o: In function `stm32plus::display::Font_COMIC36::Font_COMIC36()':
C:\Cygwin\home\mlanagan\stm32plus\lib\include/display/graphic/fonts/Font_comic_sans_36.h:15: undefined reference to `stm32plus::display::FDEF_COMIC_CHAR'
collect2.exe: error: ld returned 1 exit status
make: *** [PowerSupply.elf] Error 1


If I change the code back to one of the included fonts it works fine?

Any pointers would be appreciated.

Thanks Mike
Title: Re: Creating New Fonts
Post by: Andy Brown on May 03, 2015, 06:38:57 am
Hi Mike,

You've done everything correctly as far as generating the source and header files go. It looks like the .cpp file is either not being compiled or it's not being linked. I don't see it in your linker command line which implies that you've compiled it into the library. Is that the case and can you check that?
Title: Re: Creating New Fonts
Post by: flano on May 04, 2015, 04:23:13 am
Andy,

Thanks for your reply. My code was linking in an old version of the library, as I updated to 4.0.0 over the weekend.

Working fine now.

Thanks Mike