ARM кросс-компилятор с чрезмерным количеством ссылок - PullRequest
1 голос
/ 25 октября 2011

В настоящее время я портирую большую кодовую базу на несколько платформ, используя различные цепочки инструментов, предоставляемые производителями устройств. Если я собираю и связываю кодовую базу в linux, то на это уходит примерно 30 секунд. Для ряда кросс-компиляторов у меня это время примерно одинаковое, но для некоторых из них это время превышает 10+ минут. Я пробовал несколько методов, чтобы снизить это, но ничего не помогает (например, создание супер-библиотеки). Единственное, что заметно отличает, - это связывание с -0s, которое сокращает время почти на 40%, но все равно оставляет мне 6-минутную ссылку, а также менее идеально во время отладки, так как большая часть кода оптимизирована.

Что может сделать один кросс-компилятор намного медленнее других? В целом характеристики этих компиляторов практически идентичны (ARMv7, поддержка NEON, gcc 4.x).

Есть предложения, которые могут улучшить время ссылки? Я ссылаюсь на 3 статические библиотеки, остальное - динамические ссылки на системные библиотеки.

...