Ребята,
У меня есть проект, который я скомпилировал для процессора ARM Cortex-A8. Для этого я использую GCC. В настоящее время размер моего исполняемого файла составляет 220,1 КБ. Теперь я изменяю свой make-файл и добавляю флаг -mthumb
, строка make-файла выглядит примерно так -
gcc -mcpu=cortex-a8 -mthumb -marm -mfloat-abi=softfp -mfpu=neon
Я делаю эти изменения во всех своих make-файлах и создаю свой проект, но исполняемый файл я наконец получаю все еще остается 220,1 КБ.
Я сделал еще одно изменение в моей командной строке, я добавил параметр -mthumb-interwork
gcc -mcpu=cortex-a8 -mthumb -mthumb-interwork -marm -mfloat-abi=softfp -mfpu=neon
И снова я получил исполняемый файл того же размера 220,1 КБ. Я что-то упустил при этом?
Я написал небольшую программу, чтобы найти наименьшее из двух чисел, и скомпилировал ее, используя следующую командную строку
gcc main.c -o main
Я получаю исполняемый файл размером 8,5 КБ
Затем я выполняю
gcc -mthumb main.c -o main
У меня все еще есть исполняемый файл размером 8,5 КБ. Я получаю -
Processor: ARMv7 Processor rev 5 (v7l)
Features: swp half thumb fastmult vfp edsp neon vfpv3
....
....