Building CartoType for Linux
CartoType is written in standard C++ and will compile using CLANG and GCC. Its output is a bitmap in memory, which you can display on any device if you know how your proposed device handles bitmaps. The license allows you to distribute it as part of a binary package, not as source for on-platform compilation. Linux users tend to expect binary packages, so this should not be a problem.
Using CartoType on Linux
The simplest way to use CartoType on Linux is the high-level C++ CFramework API. It wraps all the various objects you need - the map, style sheet, fonts, and routing profiles - and gives you a simple set of functions for drawing the map, interacting with it and searching it, calculating routes and performing turn by turn navigation. The only platform-dependent code you need to write, apart from your application logic, is a routine to draw a CartoType bitmap to your display surface.