В моем проекте iPhone я использую встроенный ассемблер, который исключается, если целевой архитектурой является устройство, а не симулятор.
Поскольку некоторые встроенные коды asm предназначены только для рук, а не для большого пальца, при компиляции для iPhone необходимо указать флаг c -marm, поскольку в противном случае он пытается скомпилировать код с помощью инструкций большого пальца.
И вот в чем проблема, если я ввожу флаг -marm в настройке сборки конкретного файла, gcc выдает ошибку, если я скомпилирую для симулятора:
cc1obj: ошибка: нераспознанная опция командной строки "-marm"
Есть ли способ передать эту опцию, только если целевой архитектурой является arm?
Я знаю, что вы можете сделать это с глобальными флагами c, но я не хочу компилировать весь мой проект с флагом -marm. Я хочу, чтобы только несколько файлов .m были -marm.
Спасибо и привет, Ким