¿ Eso no será el bytecode, para que luego lo ejecute el intérprete ?, algo parecido a Java. Yo necesito una compilación que genere un binario puro y duro que se ejecute sin intérpretes ni RunTimes.Si, es bytecode.
Con respecto a lo de la visibilidad del código lo puedes resolver por medio de la ofuscación.
https://liftoff.github.io/pyminifier/
De todas formas sea QT, C binario y/o lo que sea, siempre vas a poder realizar ingeniería inversa, por lo que vean o no el código pasa a ser irrelevante a menos que uses otras herramientas que te protejan del desensamblado y que ofusquen variables y funciones para hacer más difícil su interpretación.
También la velocidad, pero todo cambia cuando cambias la perspectiva de como se hacen las cosas en Linux.
En los sistemas Unix/Linux no pones todo en un sólo ejecutable, sino que los separas en varios componentes que al final se van a comunicar entre ellos por medio de tuberías (pipes).
Así por ejemplo puedes tener un proceso que revise el expansor SPI, otro proceso donde se esté ejecutando OpenMAX de forma independiente, o si quieres ponerlo todo en un sólo ejecutable puedes usar pthread.