Привет всем. Исходные файлы взяты из проекта, который был сделан в AtmelStudio7, пытаюсь скомпилировать в своей AVRStudio4. Компилятор выдает сообщение об ошибке, которое я не могу понять. С AVR GCC раньше дела не имел. Скрин приложен. Знатоки, подскажите, где копать.
Все ли необходимые библиотеки присутствуют и добавлены в проект?
Все сишные и хидеры из исходного проекта добавлены (*.c, *.h). Может, не хватает какого-нибудь стандартного, который есть в AtmelStudio7 и которого нет в AVRStudio4? А в приведенном скрине нет никакой информации на этот счет?
А в приведенном скрине нет никакой информации на этот счет?
Может и можно что-то понять, но я недостаточно продвинут, чтобы сходу сказать, что не так. Да, там написано что-то про libgcc, но не видя кода сложно сказать, в чем дело.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
... Да, там написано что-то про libgcc, но не видя кода сложно сказать, в чем дело.
Пока кричать "Помогите!!!" рано, чего людей кодом грузить. Подумал, может кто навскидку определит. Пока поразбираюсь сам. Вам спасибо. Возможно, проблема в настройках проекта.
Это немного неверный посыл. Форум - место добровольного общения, потому, если вы выкладываете код, это не означает, что каждый заходящий в тему обязан его вдумчиво прочесть. Тем не менее, ошибки линковки чаще всего решаются именно вдумчивым изучением исходника с размышлениями о том, что же могло не найтись и почему. Вообще, прикладывать код к вопросам о программировании - хороший тон, а чаще всего - просто необходимость.
Есть много случаев, когда сама по себе ошибка компилятора, если ее понимать буквально, ничего не говорит о проблеме. Например, если компилятор ругается на какие-то "неожиданные" (unexpected) переменные, это может, среди прочего, объясняться и неподключенным stdint.h, и даже просто отсутствием точки с запятой на строке, предшествующей той, на которой компилятор рапортует ошибку.
_________________ Разница между теорией и практикой на практике гораздо больше, чем в теории.
Возможно. Однако привлекаемые ресурсы, на мой взгляд, должны соответствовать важности и срочности задачи, а также степени личной безысходности. В данном случае чужой проект был взят как пример использования TFT на контроллере il9341, и захотелось немного поупражняться. Можно было и без этого, так как библиотеки 9341 есть, бери и пользуй. Поэтому ни важности, ни срочности. Безысходности тоже не было Тем более, что с подобным совсем простым проектом проблем вообще не возникло. Теперь по теме. Вы были правы относительно присутствия необходимых библиотек. И мое предположение о настройках проекта тоже было в тему. Проблема ушла после добавления в настройки проекта ссылки на библиотеку libc.a (или libm.a ) во вкладке конфигурации проекта. А вот простой проект компилировался и без этого. Так что Вам спасибо, таки подсказали, куда копать.
__addsf3 уже есть в коде нужно попробовать перекомпилить доп. библиотеки
И __floatsisf, и __sudsf3 тоже есть в коде, да? А в каком коде? Доп. библиотеки - это какие? Стандартные из GSS? И как их перекомпилить под текущий GCC? Показалось странным, что положительный эффект дает и указание в настройках ссылки на libm.a, это же математика...
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 8
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения