[РЕШЕНО] qtgui-5.12.3-r1 не собирается
Здравствуйте.
В процессе сборки пишет такое (кусок лога):
/var/tmp/portage/dev-qt/qtgui-5.12.3-r1/work/qtbase-everywhere-src-5.12.3/src/gui/qvkgen_wrapper.sh vulkan/vk.xml /var/tmp/portage/dev>
perl /var/tmp/portage/dev-qt/qtgui-5.12.3-r1/work/qtbase-everywhere-src-5.12.3/mkspecs/features/data/unix/findclasslist.pl < QtGui.ver>
x86_64-pc-linux-gnu-g++ -c -O2 -pipe -march=sandybridge -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wa>
x86_64-pc-linux-gnu-g++ -c -O2 -pipe -march=sandybridge -std=c++1z -fvisibility=hidden -fvisibility-inlines-hidden -fno-exceptions -Wa>
Incompatible processor. This Qt build requires the following features:
aes
Incompatible processor. This Qt build requires the following features:
aes
А потом доходит до файла qwindow.cpp и ничего. Не висит комп, нет ошибок никаких. Просто не компилируется, наверное. Потому что прошло часов 5 на этом файле.
Хочу GUI на vlc плейер, для этого включил флаг qt5.
Есть ли qt без aes?
Что можно сделать?
- Для комментирования войдите или зарегистрируйтесь
Какие-то проблемы в конфигурации портажа
означает, что у тебя при данной конфигурации портажа Qt не соберется.
Покажи
и лог сборки полностью на пасту...
Для справки: у меня
vlc
тоже сqt5
но проблем с
qtgui
нет!emerge -uDN --with-bdeps=y --backtrack=30 --keep-going --verbose
Люди говорят, что проходит время.
Время говорит, что проходят люди.
emerge --info vlc
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Я полагаю, что проблема тут:
Я полагаю, что проблема тут:
arch=sandybridge
Поменяй на
arch=native
по всем флагам и сделайНо, возможно, это сразу не поможет - тогда предварительно надо будет пересобрать тулчейн:
(обязательно с опциями
-1 -j1
), а потом повторить команду выше!Благодарю за отклик
Попробую.
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Первый варик не помог
То есть:
arch=native + emerge -uDN --with-bdeps=y --backtrack=30 --keep-going --verbose-conflicts @world
Дошло до сборки qt5 и в логе писалось:
Incompatible processor. This Qt build requires the following features:
aes
Incompatible processor. This Qt build requires the following features:
aes
Нет, может на это внимания не обращать? Там после этого сообщения еще много файлов компилится.
Но вот доходит до qwindow.сpp и все: курсор мигает на qwindow.сpp и можно сутками это наблюдать.
Никаких при этом сообщений об ошибках я не видел.
Потом я смотрел в интернете про инструкции aes. Действительно, мой процессор их не знает.
Пробую пересобрать системные инструменты.
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Вообще-то sandybridge имеет
Вообще-то
sandybridge
имеет AES:но мой
core2
- нет, но, тем не менее, все компилируется и работает!Вот, посмотрите, пожалуйста: cat /proc/cpuinfo
saturn ~ # cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 42
model name : Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz
stepping : 7
microcode : 0x14
cpu MHz : 2095.198
cache size : 3072 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer xsave avx lahf_lm epb pti tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm arat pln pts
bugs : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf
bogomips : 4190.39
clflush size : 64
cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
Это же поддерживаемые инструкции процессором (?):
Помню, захотелось мне вместо -march=native написать кодовую микроархитектуру своего проца. :)
GenuineIntel -- вроде не оно.
Скачал программку для Винды: CPU-Z. Под Виндой запустил (у меня она параллельно с Линукс). Она выдала сэндибридж.
Люди говорят, что проходит время.
Время говорит, что проходят люди.
А зачем?! Повыпендриваться?..
А зачем?! Повыпендриваться?.. ;) Тем более, что ты задал ее неправильно (неточно). И кодовую архитектуру надо прописывать только тогда, когда ты используешь этот комп для кросс-компиляции. Или чтобы обмануть систему для обхода багов (возможно это твой случай, но тогда надо будет прописать код проца совместимого, но заведомо без AES, скорее всего более старого). Во всех других случаях лучше довериться системе. Меня умиляет и бесит, когда люди, не разбираясь и не разобравшись в предмете, начинают действовать методом тыка...
Нашел кого слушать! :) Вот тебе твой сэндибридж! :D Как видишь, их тут 100500! А твой проц - скорее всего дешевая разбраковка, т.е. когда чип с производственным дефектом (неудачная партия), т.е. кое-что не работает, но, чтобы не выбрасывать, ему дают другое название, уценяют и пускают в продажу. Это обычная практика при массовом производстве микросхем.
P.S. Кстати, на всякий случай посмотри, может есть более свежий БИОС для твоего компа, а также поставь и настрой пакет обновления микрокода, если его еще нет.
P.P.S. Напоследок повторюсь: у меня на компе проц даже теоретически (в отличие от твоего) не поддерживает AES, но все компилится и работает! ;)
Вот это главное :)
Значит, сделать можно.
Не повыпендриваться, просто интересно стало. Не все решается логикой, кстати. И часто нужно экспериментировать, чтобы узнать что-то новое.
Это своеобразная интерактивность мира. Ты сделал -- получил результат. А потом смотришь на полученное и оцениваешь -- то или не то.
К тому же, мне не нравится хендбук, можно и лучше делать, как по мне. Переменные меняются со временем, а суть нет.
И вообще, хороших книг по Линуксу я не видел.
Они есть?
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Почему -j1?
Кстати, вот этот момент был очень интересен.
-1 -- это понятно.
Но -j1 -- почему?
Если не трудно, ответьте, пожалуйста.
Серьезно, почему -j1?
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Потому что там важна
Потому что там важна последовательность!
Очевидно же! :)
Извините, совсем не очевдно. ;)
Ну хорошо.
Вот мы запускаем пересборку toolchain.
Компилятор "берет" исходные коды и компилирует -- это очевидно, да.
То есть, разумеется, все должно быть предусмотрено.
Не примите за дерзость, мне интересно просто.
Люди говорят, что проходит время.
Время говорит, что проходят люди.
С логом заминка.
Весит 612 Кб.
saturn ~ # wgetpaste /var/tmp/portage/dev-qt/qtgui-5.12.3-r1/temp/build.log -v
Pasting > 25 kB often tend to fail with dpaste. Use --verbose or --debug to see the
error output from wget if it fails. Alternatively use another pastebin service.
Apparently nothing was received. Perhaps the connection failed.
--2019-08-22 19:43:05-- http://dpaste.com/
Resolving dpaste.com... 69.55.226.35
Connecting to dpaste.com|69.55.226.35|:80... connected.
HTTP request sent, awaiting response... 413 OK
2019-08-22 19:43:13 ERROR 413: OK.
saturn ~ #
Теперь с этим буду разбираться. :)
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Пока разбираешься - сбрось
Пока разбираешься - сбрось конфиг ядра на пасту...
Кстати, пока будешь разбираться с баг-репортами, - чтобы не тормозить, рекомендую последовать их же совету: "...Alternatively use another pastebin service." ;)
Вот лог сборки qt5
https://dpaste.de/AY6a
:)
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Не тот лог - здесь еще с
Не тот лог - здесь еще с
arch=sandybridge
:И не полностью (нет момента ошибки).
конфиг ядра
http://dpaste.com/0ACR6MH
Интересно, а зачем он вам? :)
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Не уверен, что поможет, но
Не уверен, что поможет, но после (пересборки тулчейна!) попробуй включить (хотя бы модулем)
AES_X86_64
и, может,CRYPTO_AES_NI_INTEL
.Насколько я понял
На Pastebin, например, есть ограничение в 512 Кб для бесплатной загрузки кода. Если хочешь загрузить больше -- надо заплатить им.
Могу ошибаться, так как не доверяю своим огранам чувств.
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Заархивируй и сбрось
Заархивируй и сбрось на какую-нибудь публичную файлопомойку. Но только после того, как сделаешь все, что я перечислил выше.
Хорошо, спасибо. :)
Сделаю.
По крайней мере, вы дали хорошую наводку, в каком направлении двигаться.
Все буду пробовать и отпишусь потом.
Люди говорят, что проходит время.
Время говорит, что проходят люди.
Проблема решена
Большое вам спасибо. Вы были правы.
Пересобрал dev-qt/qtcore c флагом -march=native и потом dev-qt/qtgui собрался нормально. Не было никаких сообщений про инструкции aes и прочего.
Действительно вы помогли мне.
Люди говорят, что проходит время.
Время говорит, что проходят люди.