With Delphi (on Windows of course), I would use the units from TextShaping4Delphi (
https://github.com/projekter/TextShaping4Delphi), specifically the uFreeType unit, to render glyphs to memory buffers, which I could then use to build texture atlases for use with OpenGL for text rendering. There doesn't seem to be a suitable (or complete) alternative that I can use with Free Pascal or that works on Linux. I've tried to modifying uFreeType.pas to work with FPC on Linux, but I haven't been able to make it work.
I'm not using the form editor, and so I am not using components, and I don't want to have to do something like creating a TBitmap, TImage or similar, drawing text to a canvas, querying the canvas for the text extents, and then having to get the raw image data from the canvas to shove in an OpenGL texture.
The freetype and freetynehdyn units (and their includes) seem to be incomplete or written against an older version of FreeType, not including functions like FT_RENDER_GLYPH that I would use to actually render those glyphs to a memory buffer.
The other units/libraries I've checked out also don't offer what I'm looking for. They usually provide their own form of canvas or bitmap buffer and abstract/hide the actual text rendering functionality. I want to be able to either use FreeType directly, or otherwise have thin wrapper over it.
If there isn't something available, then I guess my next step is to either create my own uFreeType.pas equivalent that works with FPC on Linux, or otherwise create what I want as a shared library with C++ and then write the header translation, which means I'd have to learn how to go about creating those shared libraries.
Edit: I could use SFML or SDL2, which I know have working bindings for FPC, but I'm wanting to write my own text rendering code that goes along with my own windowing and input handling code.