Есть необходимость использование типа long long (64 бита). Возникает проблема при попытке деления (сложение, вычитание, умножение выполняются нормально), а при попытке использовать деление на этапе сборки проекта выдается следующее сообщение:
collect2: ld terminated with signal 11 [Segmentation fault] /usr/local/arm/lib/gcc/arm-elf/4.3.1/../../../../arm-elf/bin/ld: /usr/local/arm/lib/gcc/arm-elf/4.3.1/libgcc.a(_divdi3.o)(__divdi3): warning: interworking not enabled. first occurrence: main.o: thumb call to arm /usr/local/arm/lib/gcc/arm-elf/4.3.1/../../../../arm-elf/bin/ld: BFD (GNU Binutils) 2.18.0.20080103 assertion fail /usr/local/arm/src/binutils-2.18.1/bfd/elf32-arm.c:6538 main.o: In function `main': /home/user/Project/STM32/P150/main.c:171: dangerous relocation: make: *** [main.elf] Ошибка 1
Пробовал собирать с опцией -mthumb-interwork -результат тот же. И при использовании функции lldiv тоже самое. Не могу въехать, почему умножать умножает, а делить не хочет? Все собирал с опцией --enable-interwork, в чем может быть проблема, есть идеи?
|