|
|
  |
сборка gnu gcc-4.4.1-3 - ошибка |
|
|
|
Aug 31 2009, 14:28
|
Местный
  
Группа: Участник
Сообщений: 421
Регистрация: 2-01-08
Пользователь №: 33 778

|
Возможно это связвно с вот этими изменениями в binutils http://www.nabble.com/Update-ARM-mapping-s...td24760784.htmlКак и куда отправлять багрепорт написано в binutils/README Проблема в thumb, без multilib должно собраться.
|
|
|
|
|
Sep 3 2009, 15:47
|

Местный
  
Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091

|
Цитата(sasamy @ Sep 1 2009, 15:15)  Уже спрашивал в другой теме, но, насколько я помню, так никто и не ответил. Я, в отличие от предлагаемого по вышеуказанной ссылке плана сборки, выполняю пункты 2, 3 и 4 за один раз (при конфигцрации gcc говорю --with-newlib, и последжующий make собирает сразу и gcc, и newlib). Лично для меня очевидно, что план из двух пунктов вдвое проще, чем из четырех. Тем не менее, в этом форуме все время рекомендуют идти именно длинным путем. Почему? Какие это дает преимущества?
--------------------
Всего наилучшего, Alex Mogilnikov
|
|
|
|
|
Sep 3 2009, 18:36
|
Знающий
   
Группа: Участник
Сообщений: 783
Регистрация: 22-11-08
Пользователь №: 41 858

|
Цитата(alx2 @ Sep 3 2009, 19:47)  Я, в отличие от предлагаемого по вышеуказанной ссылке плана сборки, выполняю пункты 2, 3 и 4 за один раз (при конфигцрации gcc говорю --with-newlib, и последжующий make собирает сразу и gcc, и newlib). По ссылке все пункты - 1,2,3,4 выполняются за один раз - make  А вообще Цитата --with-newlib Specifies that `newlib' is being used as the target C library. This causes __eprintf to be omitted from libgcc.a on the assumption that it will be provided by `newlib'. Не совсем понятно как у вас собирается еще и newlib за один make. Понятно если до трех шагов сократить - без последнего 4, но я так не пробовал потому что всегда пользуюсь готовыми скриптами для сборки - сильно экономит время и нервы
|
|
|
|
|
Sep 5 2009, 20:46
|

Местный
  
Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091

|
Цитата(sasamy @ Sep 3 2009, 23:36)  Не совсем понятно как у вас собирается еще и newlib за один make. Не совсем понятно, что именно Вам не понятно.  В смысле, что значит "как"? Попробуйте сами - увидите. tar -yxf gcc-core-x.x.x.tar.bz2 tar -yxf gcc-g++-x.x.x.tar.bz2 tar -zxf newlib-x.x.x.tar.gz cd gcc-x.x.x ln -fs ../newlib-x.x.x/newlib . cd .. mkdir builddir cd builddir ../gcc-x.x.x/configure ..... --with-newlib make make install
--------------------
Всего наилучшего, Alex Mogilnikov
|
|
|
|
|
Sep 6 2009, 12:19
|
Местный
  
Группа: Участник
Сообщений: 421
Регистрация: 2-01-08
Пользователь №: 33 778

|
Мой вариант для 4.4.1 (с uClibc) http://paravozeg.narod.ru/tcmakev3.gzПравка: перед запуском скрипта, # cd /usr/local # ln -s /path_to_script_dir/sysroot/usr/local/arm arm ну и PATH надо заранее поправить, это как всегда. alx2Странно, только сейчас узнал, что newlib не есть часть gcc, конфигурил с --with-newlib а newlib не добавлял, собиралось и работало.
Сообщение отредактировал amaora - Sep 6 2009, 12:26
|
|
|
|
|
Sep 10 2009, 09:57
|
Частый гость
 
Группа: Свой
Сообщений: 107
Регистрация: 27-06-05
Из: Россия
Пользователь №: 6 324

|
Цитата(Terminator @ Sep 1 2009, 13:38)  Про openocd очень интересно. С новой версией у меня никак не получается прошить sam7 "одной командой". Приходится запускать openocd и из telnet-а слать команды на перешивку  Как запущу все окончательно, обязательно распишу. Так вроде все протестил, вроде работает, но при попытке использовать билиотечные функции начинает ругаться: /usr/local/arm/lib/gcc/arm-elf/4.3.4/../../../../arm-elf/bin/ld: /usr/local/arm/lib/gcc/arm-elf/4.3.4/../../../../arm-elf/lib/libc.a(lib_a-strncmp.o)(strncmp): warning: interworking not enabled. first occurrence: main.o: Thumb call to ARM /usr/local/arm/lib/gcc/arm-elf/4.3.4/../../../../arm-elf/bin/ld: /usr/local/arm/lib/gcc/arm-elf/4.3.4/../../../../arm-elf/lib/libc.a(lib_a-strncmp.o)(strncmp): warning: interworking not enabled. first occurrence: main.o: Thumb call to ARMКакого ему надо не пойму. Опция -mthumb задана. Почему берет библиотеку /usr/local/arm/arm-elf/lib/libc.a а не /usr/local/arm/arm-elf/lib/thumb/libc.a нифига не понимаю. Опцию чтоли забыл какую-нить задать? С этим вроде разобрался, но сомневаюсь, что сделал правильно, развейте, плиз, сомнения. Я тупо вставил в мэйкфайд следующую строку: LDFLAGS += -L /usr/local/arm/arm-elf/lib/thumb -lcЭто правильно или есть более верные способы?
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|