Я подозреваю, что лучший каркас C для приложений для мобильных телефонов - OpenKODE .
Это не значит, что очень хорошо для общего программирования приложений или очень переносимо. Он в первую очередь предназначен для игр и мультимедиа (следовательно, без оконного инструментария) на достаточно высокопроизводительных устройствах (следовательно, OpenGLES - единственный графический API, хотя и для 2D-объектов, которые могут только дать вам представление) и не имеет большой тяги на данный момент (следовательно, в теории гораздо более переносимо, чем на практике).
Но это основано на C.
Apple мешает любой портативной платформе по-настоящему охватить все значимые мобильные устройства, если не считать подсистему JavaScript в браузере. Даже если бы существовала технология для скомпилированных приложений, о динамическом соединении с фреймворком на iPhone не может быть и речи, и вполне возможно, что они запретили бы даже статически-связанный фреймворк, который им не нравился (как это было с Flash- компилятор iPhone).
Это не значит, что до появления Apple все было портативно и прекрасно - конечно, это не так - но AFAIK Стив Джобс - тот, кто выходит и говорит, что полная переносимость плохая, он работает над тем, чтобы предотвратить это, и что каждая мобильная платформа должна иметь свою собственную платформу, к которой авторы приложений обращаются напрямую. Ранее существовала особая фрагментация, которая, как мне кажется, была связана скорее с удачей, чем с суждением.