uni 6 18 мая, 2022 Опубликовано 18 мая, 2022 (изменено) · Жалоба Собрал тут библиотеку etl для IAR 9.20.4 (С++17). В архиве приложены исходники и содержимое папки cpp из IAR'а, где пришлось сделать некоторые исправления.etl-iar9204-20220518.7z Файлы проекта тут: \etl\test\iar9204\ Для тестирования: - заменить файлы из папки cpp; - скомпилировать; - запустить \etl\test\iar9204\settings\etl.Debug.cspy.cmd Проект настроен для симулятора C-SPY (Cortex-M3). Работает около 90% всех тестов, исключая те, которым требуются потоки. Некоторые тесты отключены, т.к. отсутствуют необходимые заголовочники. Сообщения об ошибках заглушены в свойствах проекта. Изменено 18 мая, 2022 пользователем uni Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
VladislavS 37 18 мая, 2022 Опубликовано 18 мая, 2022 · Жалоба 2 часа назад, uni сказал: - заменить файлы из папки cpp; Ну, лезть в заголовочные файлы, поставляемые с компилятором, это совсем не дело. Такие вещи надо в своём коде делать. #ifdef __ICCARM__ namespace std { template< class T > inline constexpr bool is_enum_v = is_enum<T>::value; template< class T, class U > inline constexpr bool is_same_v = is_same<T, U>::value; template< class Base, class Derived > inline constexpr bool is_base_of_v = is_base_of<Base, Derived>::value; template <typename T> inline constexpr size_t alignment_of_v = alignment_of<T>::value; } #endif Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uni 6 18 мая, 2022 Опубликовано 18 мая, 2022 · Жалоба Да, вы правы. Я начинал портирование с этого приёма. Это не единственная проблема. Все их можно обозначить, сравнив папки с помощью WinMerge. Попробуйте последовать своему совету и собрать таким образом проект. Приложите результат. Моя версия не окончательная и действительно требует доработки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
uni 6 22 июня, 2022 Опубликовано 22 июня, 2022 · Жалоба В новой версии IAR 9.30.1 можно собрать проект без замены заголовочников в cpp, если использовать библиотеку Libc++ (General Options\Library Configuraion). При этом можно использовать оригинальные файлы etl. В архиве я некоторые слегка модифицировал. Полный проект пока не прикладываю, т.к. тестирование в симуляторе останавливается на одном тесте, выкидывая в обработчик исключения. В предыдущем варианте такой фигни не было. Если удастся пройти все тесты в симуляторе, то выложу рабочий вариант. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться