User Info
Добро пожаловать, Guest Пользователей: 0 Поисковых ботов: 2 Гостей: 1
Сборка buildroot под Ubuntu 16.04 x64
dolmatov
Пункты: 1812
Регистрация: 03.07.2016
Здравствуйте. Пытаюсь собрать дефолтный buldroot для SK-ATSAMA5D3 под Ubuntu 16.04 x64. Получаю ошибку
Код /usr/bin/ld: i386 architecture of input file `/home/rain/buildroot-2013.11-at91-sk/output/build/buildroot-config/conf.o' is incompatible with i386:x86-64 output
Все рекомендации касающиеся этой проблемы, которые удалось найти, вроде установки 32 битовых библиотек, выполнил. Проблема остается. Определенно не хватает знаний. Не помогут ли мэтры сделать
второй шаг. Первым был сборка того же buldroot в Ubuntu 16.04 x32, установленной на виртуальной машине VmWare. Там тоже были некоторые проблемы, которые при помощи гугла и какой то матери удалось решить. Работать далее на виртуалке тяжело - сбыстродействие очень мало. Только сборка buildroot продолжалась около 2 суток. Хотелось бы работать на основной 64 битной системе. Или есть принципиальные ограничения на сборку buildroot в х64? Буду бесконечно признателен за пинок в верном направлении.
Jury093
Пункты: 54271
Регистрация: 25.05.2009
Пол: Мужчина
Из: Санкт-Петербург
Цитата Здравствуйте. Пытаюсь собрать дефолтный buldroot для SK-ATSAMA5D3 под Ubuntu 16.04 x64. Получаю ошибку
buildroot-2013.11-at91-sk/output/build/buildroot-config/conf.o' is incompatible with i386:x86-64 output
если я правильно понял, вы взяли сборку билдрута из 32-х битной системы и она не собирается на 64-х битной?
тогда, как гипотеза, у вас остались объектники (*.o) х32, на что идет справедливая ошибка..
попробуйте почистить дистрибутив:
Код make distclean
или что там использовано в билдруте, потом отконфигугрировать заново
Код make ARCH=arm что-то-там-config
или подсунуть свой сбекапленный конфиг
ну и пробовать пересобраться..
На любой вопрос есть любой ответ.
dolmatov
Пункты: 1812
Регистрация: 03.07.2016
Спасибо, Jury!
Вы как в воду смотрели..Объектники действительно есть. Я ожидал что они появляются в процессе сборки как одного из ее из этапов - компиляции.
выполнил
Код make distclean
make ARCH=arm sama5d3_sk_defconfig
make
процесс прервался с новой ошибкой
Код
--2016-07-03 23:55:16-- http://sources.buildroot.net//gcc-linaro-arm-linux-gnueabihf-4.8-2013.09_linux.tar.xz
Resolving sources.buildroot.net (sources.buildroot.net)... 176.9.16.109
Connecting to sources.buildroot.net (sources.buildroot.net)|176.9.16.109|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2016-07-03 23:55:16 ERROR 404: Not Found.
package/pkg-generic.mk:31: recipe for target '/home/rain/buildroot-2013.11-at91-sk/output/build/toolchain-external-undefined/.stamp_downloaded' failed
make: *** [/home/rain/buildroot-2013.11-at91-sk/output/build/toolchain-external-undefined/.stamp_downloaded] Error 1
Видимо как то связано с изменнием даты файлов?
dolmatov
Пункты: 1812
Регистрация: 03.07.2016
Цитата
Видимо как то связано с изменнием даты файлов?
разобрался. заданного тулчейна уже нет у линаро. законфигурил более новый. процесс идет.
dolmatov
Пункты: 1812
Регистрация: 03.07.2016
еще одна беда. даже две((
Код
serve_image.c: In function ‘main’:
serve_image.c:32:18: error: storage size of ‘hints’ isn’t known
struct addrinfo hints;
^
serve_image.c:94:19: error: ‘AI_ADDRCONFIG’ undeclared (first use in this function)
hints.ai_flags = AI_ADDRCONFIG;
^
serve_image.c:94:19: note: each undeclared identifier is reported only once for each function it appears in
serve_image.c:97:8: warning: implicit declaration of function ‘getaddrinfo’ [-Wimplicit-function-declaration]
ret = getaddrinfo(argv[1], argv[2], &hints, &ai);
^
serve_image.c:99:40: warning: implicit declaration of function ‘gai_strerror’ [-Wimplicit-function-declaration]
fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(ret));
^
serve_image.c:99:19: warning: format ‘%s’ expects argument of type ‘char *’, but argument 3 has type ‘int’ [-Wformat=]
fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(ret));
^
serve_image.c:103:35: error: dereferencing pointer to incomplete type ‘struct addrinfo’
for (runp = ai; runp; runp = runp->ai_next) {
^
serve_image.c:32:18: warning: unused variable ‘hints’ [-Wunused-variable]
struct addrinfo hints;
^
common.mk:82: recipe for target '/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/serve_image.o' failed
make[1]: *** [/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/serve_image.o] Error 1
make[1]: Leaving directory '/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0'
package/pkg-generic.mk:121: recipe for target '/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/.stamp_built' failed
make: *** [/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/.stamp_built] Error 2
sasamy
Пункты: 83552
Регистрация: 14.08.2009
Не знаю насчет 16.04, у меня на 14.04 x64 все собирается, к сожалению трудно сказать что у вас не хватает, у себя я помоему из мануала Yocto или Android (AOSP) список пакетов брал и доустановливал.
dolmatov
Пункты: 1812
Регистрация: 03.07.2016
Цитата Не знаю насчет 16.04, у меня на 14.04 x64 все собирается, к сожалению трудно сказать что у вас не хватает, у себя я помоему из мануала Yocto или Android (AOSP) список пакетов брал и доустановливал.
Поставил 14.04 х64 на вирт.машину.
Код make distclean
make ARCH=arm sama5d3_sk_defconfig
make
make menuconfig
Toolchain = custom toolchain
URL тулчейна устанавливал на Linaro(archive) 2013.08, 2013.08, 2013.07
например:
https://releases.linaro.org/archive/13.07/components/toolchain/binaries/gcc-linaro-arm-linux-gnueabihf-4.8-2013.07-1_linux.tar.xz
Во всех случаях получал:
Код >>> toolchain-external undefined Patching
>>> toolchain-external undefined Configuring
Cannot execute cross-compiler '/home/rain/buildroot-2013.11-at91-sk/output/host/opt/ext-toolchain/bin/arm-linux-gcc'
sasamy
Пункты: 83552
Регистрация: 14.08.2009
Попробуйте установить пакеты
$ sudo apt-get install git-core flex bison gperf build-essential \
zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev \
libxml2-utils xsltproc unzip gnupg
dolmatov
Пункты: 1812
Регистрация: 03.07.2016
Цитата Попробуйте установить пакеты
$ sudo apt-get install git-core flex bison gperf build-essential \
zip curl zlib1g-dev gcc-multilib g++-multilib libc6-dev-i386 \
lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev \
libxml2-utils xsltproc unzip gnupg
Благодарю Вас, под 14.04 х86 сборка успешно завершилась.
Urrys
Пункты: 1551
Регистрация: 07.07.2012
[quote]еще одна беда. даже две((
Код
serve_image.c: In function ‘main’:
serve_image.c:32:18: error: storage size of ‘hints’ isn’t known
struct addrinfo hints;
^
serve_image.c:94:19: error: ‘AI_ADDRCONFIG’ undeclared (first use in this function)
hints.ai_flags = AI_ADDRCONFIG;
^
serve_image.c:94:19: note: each undeclared identifier is reported only once for each function it appears in
serve_image.c:97:8: warning: implicit declaration of function ‘getaddrinfo’ [-Wimplicit-function-declaration]
ret = getaddrinfo(argv[1], argv[2], &hints, &ai);
^
serve_image.c:99:40: warning: implicit declaration of function ‘gai_strerror’ [-Wimplicit-function-declaration]
fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(ret));
^
serve_image.c:99:19: warning: format ‘%s’ expects argument of type ‘char *’, but argument 3 has type ‘int’ [-Wformat=]
fprintf(stderr, "getaddrinfo: %s\n", gai_strerror(ret));
^
serve_image.c:103:35: error: dereferencing pointer to incomplete type ‘struct addrinfo’
for (runp = ai; runp; runp = runp->ai_next) {
^
serve_image.c:32:18: warning: unused variable ‘hints’ [-Wunused-variable]
struct addrinfo hints;
^
common.mk:82: recipe for target '/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/serve_image.o' failed
make[1]: *** [/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/serve_image.o] Error 1
make[1]: Leaving directory '/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0'
package/pkg-generic.mk:121: recipe for target '/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/.stamp_built' failed
make: *** [/home/rain/buildroot-2013.11-at91-sk/output/build/host-mtd-1.5.0/.stamp_built] Error 2
[/quote]
На новой убутне не билдится mtd-1.5.0, решается это подменой версии - в билдруте файл package/mtd/mtd.mk измени версию на
MTD_VERSION = 1.5.2
Потом
rm -rf output/build/*mtd*
make