LordVader 0 7 октября, 2012 Опубликовано 7 октября, 2012 · Жалоба стоят avr-gcc, avr-binutils и libc-avr. Делаю из бинарника объектный файл с целью влинковать его: >avr-objcopy -I binary -O elf32-avr --rename-section .data=.progmem.data,contents,alloc,load,readonly,data --redefine-sym _binary_top_mlz_start=fpga --redefine-sym _binary_top_mlz_end=fpga_end top.mlz top.o тут всё ок. далее линкую: >avr-gcc -mmcu=atmega128 -Wl,-Map=core.map zx.o interrupts.o main.o ps2.o spi.o depacker_dirty.o rs232.o rtc.o atx.o joystick.o version.o tape.o kbmap.o top.o -o core.elf /usr/lib/gcc/avr/4.5.3/../../../avr/bin/ld: avr architecture of input file `top.o' is incompatible with avr:51 output collect2: ld returned 1 exit status Версии: >avr-gcc --version avr-gcc (GCC) 4.5.3 >avr-objcopy --version GNU objcopy (GNU Binutils) 2.20.1.20100303 ЧСХ, те же версии тулзов в mint 11 64bit линкуют всё на ура. Я неправ в опциях avr-objcopy или это баг в тулзах? И (риторическое) что делать? :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 119 7 октября, 2012 Опубликовано 7 октября, 2012 · Жалоба В опциях avr-objcopy надо указать целевую архитектуру (avr:51), но навскидку не скажу как именно, какими ключами это сделать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LordVader 0 7 октября, 2012 Опубликовано 7 октября, 2012 · Жалоба В опциях avr-objcopy надо указать целевую архитектуру (avr:51), но навскидку не скажу как именно, какими ключами это сделать. "-O elf32-avr" -- разве не указание архитектуры? Прочёл ман и дошло... Сергей, спасибо за подсказку. добавил в avr-objcopy "-B avr:51" и всё слинковалось. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alx2 0 8 октября, 2012 Опубликовано 8 октября, 2012 · Жалоба "-O elf32-avr" -- разве не указание архитектуры?Нет, это указание формата. -O --output-target <bfdname> Create an output file in format <bfdname> Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
LordVader 0 8 октября, 2012 Опубликовано 8 октября, 2012 · Жалоба Остаётся вопрос, почему в другом дистрибе ровно те же версии бинутилей всё линковали без -B. Собраны с разными настройками? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alx2 0 9 октября, 2012 Опубликовано 9 октября, 2012 · Жалоба Остаётся вопрос, почему в другом дистрибе ровно те же версии бинутилей всё линковали без -B. Собраны с разными настройками? Судя по последнему вопросу, Вы не сами его собирали, а взяли уже собранный кем-то другим (майнтейнером дистрибутива). В таком случае, могло быть все что угодно вплоть до наложения сторонних патчей. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться