Кросс-компилятор не зависит ни от ядра, ни от целевого устройства.Это зависит от архитектуры SoC или процессора, на который вы ориентируетесь.Поэтому, если ваш текущий компилятор - arm-linux-gnueabihf-gcc, это означает, что он может компилировать код для процессоров ARM32, которые имеют аппаратную поддержку с плавающей запятой.В зависимости от вашей хост-системы Linux, вы можете установить аналогичный компилятор, используя менеджер пакетов, или вы также можете скачать его с здесь .
Разные люди, вероятно, порекомендуют разные подходы, а также о том,конкретный подход легкий или сложный.Несмотря на это, я склонен рекомендовать создавать полный целевой образ и генерировать SDK для разработки, используя что-то вроде Yocto / Openembedded или Buildroot.
Не совсем точно, что вы подразумеваете под Q4.