Ошибка при компиляции Qt 5.4.1 на buildroot 2014.08
muaddib
Пункты: 1232
Регистрация: 20.11.2014
Появляется ошибка g++: ошибка: unrecognized command line option «-fuse-ld=gold»
g++ -Wl,--gc-sections -Wl,-O1 -fuse-ld=gold -o ../../../bin/qlalr .obj/compress.o .obj/cppgenerator.o .obj/dotgraph.o .obj/lalr.o .obj/main.o .obj/parsetable.o .obj/recognizer.o .obj/grammar.o -L/home/muaddib/hola/buildroot-2015.02-sk/output/build/qt5base-5.4.1/lib -lQt5Bootstrap -lpthread
g++: ошибка: unrecognized command line option «-fuse-ld=gold»
make[3]: *** [../../../bin/qlalr] Ошибка 1
make[3]: Выход из каталога `/home/muaddib/hola/buildroot-2015.02-sk/output/build/qt5base-5.4.1/src/tools/qlalr'
make[2]: *** [sub-qlalr-make_first] Ошибка 2
g++ -Wl,--gc-sections -Wl,-O1 -fuse-ld=gold -o ../../../bin/moc .obj/moc.o .obj/preprocessor.o .obj/generator.o .obj/parser.o .obj/token.o .obj/main.o -L/home/muaddib/hola/buildroot-2015.02-sk/output/build/qt5base-5.4.1/lib -lQt5Bootstrap -lpthread
g++: ошибка: unrecognized command line option «-fuse-ld=gold»
make[3]: *** [../../../bin/moc] Ошибка 1
make[3]: Выход из каталога `/home/muaddib/hola/buildroot-2015.02-sk/output/build/qt5base-5.4.1/src/tools/moc'
make[2]: *** [sub-moc-make_first] Ошибка 2
make[2]: Выход из каталога `/home/muaddib/hola/buildroot-2015.02-sk/output/build/qt5base-5.4.1/src'
make[1]: *** [sub-src-make_first] Ошибка 2
make[1]: Выход из каталога `/home/muaddib/hola/buildroot-2015.02-sk/output/build/qt5base-5.4.1'
make: *** [/home/muaddib/hola/buildroot-2015.02-sk/output/build/qt5base-5.4.1/.stamp_built] Ошибка 2
sasamy
Пункты: 83540
Регистрация: 14.08.2009
Виртуальная машина со старой убунтой 10.04 ? На 14.04 такой ошибки не возникает. Не знаю - Павел обновил вируталки на ftp или нет...
muaddib
Пункты: 1232
Регистрация: 20.11.2014
Старая версия OpenSuse 12.3, в инете рекомендуют обновить gcc до 4.8.3
Pavel Ivanchenko
Admin
Пункты: 92788
Регистрация: 24.03.2009
Пол: Мужчина
Новую виртуалку на прошлой неделе выложил, см. на фтп.
sasamy
Пункты: 83540
Регистрация: 14.08.2009
Цитата
Старая версия OpenSuse 12.3, в инете рекомендуют обновить gcc до 4.8.3
Попробуйте откатить буилдрут на старый кросскомпилятор, в директории
toolchain/toolchain-external/
поменяйте файлы
Config.in.orig --> Config.in
toolchain-external.mk.orig --> toolchain-external.mk
по-моему ошибка появилась после обновления кросскомпилятора а не Qt, возможно в Linaro поменяли сборочное окружение, раньше они собирали на убунте 10.04
sasamy
Пункты: 83540
Регистрация: 14.08.2009
Цитата
Ошибка при компиляции Qt 5.4.1 на buildroot 2014.08
Цитата
/home/muaddib/hola/buildroot-2015.02-sk /
я такого не делал :) зря вы гоняетесь за версиями - ядро 3.10, смысла обновлять буилдрут нет
muaddib
Пункты: 1232
Регистрация: 20.11.2014
Откат на старый кросс-компилятор ничего не дал.
Та же ошибка, пробовал собрать под свежим дистрибутивом OpenSuse 13.2
Ошибка на том же месте, но уже другая
collect2: fatal error: cannot find 'ld'
Откат по новым дистрибутивом также ничего не дает.
muaddib
Пункты: 1232
Регистрация: 20.11.2014
buildroot тот же 2014.08 скачан с Yandex диска, каталог так назвал, чтобы была возможность иметь старую рабочую версию за 2014 г.
sasamy
Пункты: 83540
Регистрация: 14.08.2009
Цитата
Та же ошибка, пробовал собрать под свежим дистрибутивом OpenSuse 13.2
Дистрибутиво-проблемы похоже. Попропбуйте удалить патч в
package/qt5/qt5base/qt5base-0006-configure-fix-gold-linker-support-detection.patch
и собрать без него
Цитата
Откат по новым дистрибутивом также ничего не дает.
На Ubuntu 14.04 собирается 100%
muaddib
Пункты: 1232
Регистрация: 20.11.2014
Удаление патча ничего не дало, помогло только удаление всех упоминаний о -fuse-ld=gold в файлах MakeFile в каталоге Qt и в configure.
Тогда собралось без проблем.
Но честно говоря Qt5 по производительности меня разочаровал, происводительность программы упала как минимум на 20%.
На Qt 4.8 загрузка процессора составляла 80%, а сейчас 100%, и это с учетом двух ядер с распараллеливанием.
Кроме того ужасно тормозит вывод на QPainter, не более 5 кадров/сек, тогда как в Qt 4.8 проблем не наблюдалось.
Ubuntu не использую так как по работе у меня стоит машина с OpenSuse.
В Ubuntu мне работать не удобно.