Титла: avr проблем в Ubuntu 16.10 Публикувано от: bibishte в Oct 22, 2016, 17:19 Здравейте всички,
Опитвам се да компилирам и кача проект на Atmega8 контролер, но компилацията ми връща следната грешка: Код: ** buffer overflow detected ***: /usr/lib/gcc/avr/4.9.2/../../../avr/bin/ld terminated Това са версиите на gcc-avr, avr-libc, и binutils: binutils - 2.26.20160125+Atmel3.5.3-1(yakkety) avr-libc - 1:1.8.0+Atmel3.5.0-1(yakkety) gcc-avr - 1:4.9.2+Atmel3.5.0-1(yakkety) Също така използвам Ubuntu 16.10 :o ??? същата програма я пуснах да се компилира от друг компютър на който съм качила Gento, и работи. Това са версиите на gcc-avr, avr-libc, и binutils: avr-libc - 1.8.1 binutils - 2.24 gcc-avr - 4.9.3 Предполагам че версиите на gcc-avr, avr-libc, и binutils на компютърът с Ubuntu не са съвместими, но е възможно и да има грешка в binutils файлът. Благодаря ви за помощта предварително!! :) Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: kierenski в Oct 22, 2016, 19:08 Имаш проблем в съвместимостта на avr-glibc и glibc на линукса защото са компилирани за различни версии и avr-glibc търси функция която я няма или не е същата.
Компилирай avr-glibc от сорс код за съответния линукс и проблема ще изчезне. п.п. този контролер е доста стар и не е добър избор за работа вече. Избери си някой с Cortex M0 ядро и всичко ще бъде отлично и със значително по-малка консумация. Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: bibishte в Oct 22, 2016, 20:07 Благодаря за отговора!
Нека компилацията от сорс файл да бъде последен вариант. Желая да е от хранилището ми. Не мисля че за този проект е необходим толкова мощен процесор, сарата атмега е достатъчна(пък е й малко по евтина) ;) https://github.com/bibishte/firmwares Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: orangutan_baby в Oct 22, 2016, 20:43 Няма друг вариянт освен да го направиш с по-мощния. В линукс това е скупено. Защо го правиш по най-сложния начин, а не под Windows, сякаш пред гаджето си ще се фръцкаш.
Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: bibishte в Oct 22, 2016, 20:57 Нека да се отнесем професионално към въпроса. Под Линукс ми е по-лесно и това си е моето предпочитание! За това съм писала в Линукс-бг а не в Уиндоус-бг!
EDIT: Това вече е работеш проект и не мисля да го променям заради един компилатор или заради по-мощен процесор, както и заради една бълха няма да си изгоря къщата! Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: kierenski в Oct 23, 2016, 11:05 bibishte, ARM процесорите Cortex M0 и Cortex M0+ са колкото мегите само че са 32-битови и нещата стават по-лесно с тях. Доколкото върви цена мегите са 4 пъти по скъпи от Cotex ядрата, а тактовата честота винаги може да се намали без проблеми.
Разбира се за стар проект не си заслужава смяна, но моя съвет е за новите неща да преминеш на Cortex ядра. STM32 серията е доста разпространена в България и няма да имаш проблеми с доставката. Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: bibishte в Oct 23, 2016, 12:24 Да, разбирам. В момента съм в процес на разработка на борд за тях, но имат един единствен проблем, retention на паметта е по-малък от 20 години :'( на ST чиповете като low cost. Но на Atmel и NXP са хубави на са по-скъпи. И архитектурата на Atmega/Tiny/XMega е доста осъвършенствана, може да е стара но е доста изчистена. Но не мисля да променям този проект за сега. :)
Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: kierenski в Oct 23, 2016, 12:56 Всеки със своята разработка ;D
Да STM32 са за битови изделия, но ако искаш военни разработки и медицински такива има други които са много по-добри дори и от Atmel. Всичко е според нуждите. Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: bibishte в Oct 23, 2016, 19:01 Съгласна съм ;D
Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: Любо в Nov 08, 2017, 13:50 Здравейте!
Съжалявам, че съживявам темата, обаче е оставена без отговор, а ми излиза на първо място при търсене на проблема в Гугъл, така че нека да помогнем на бъдещите със същия проблем. При мен се получи същата грешка. Извежда ми абсолютно същите редове и адреси. Версиите на пакетите ми са същите, само версията на Убунту ми е 17.04. Ето какво го оправи при мен: Поне при мен грешката се проявява, само ако се опитам да компилирам посредством CMake, ползвайки например инструментариума от тук: https://github.com/mkleemann/cmake-avr ($2) (има подобни и на други места). Ако опитам да компилирам програма директно от командния ред, всичко работи. Оказва се, че във файловете на CMake, когато се извършва самото компилиране, към свързващата програма, освен разни други опции, е подадена и следната (директно от файла на CMake): Код: ... -Wl,-Map,${MAP_FILE} ... Тоест реално свързващата програма получава тази опция: Код: ... -Map <име на файл>.map ... Целта е да се създаде файл „map“ (повече за това тук: http://ftp://ftp.gnu.org/old-gnu/Manuals/ld-2.9.1/html_mono/ld.html#IDX130), в който има разни интересни работи, за които може да се прочете тук: http://www.atmel.com/webdoc/avrlibcreferencemanual/group__demo__project_1demo_project_map.html ($2) Изглежда това се чупи, поне в тази версия на пакетите. Решението е да се премахне подаването на тази опция към свързващата програма. Така този файл няма да се създаде, но той така или иначе е страничен и няма пряко отношение към самата програма. В случая на CMake, този файл не се ползва за нищо, само се създава (и трие при „clean“). След премахване на опцията, програмата се компилира и свързва без проблем. Успех! Титла: Re: avr проблем в Ubuntu 16.10 Публикувано от: 10101 в Nov 08, 2017, 15:08 [_]3 [_]3 [_]3
За поста. |