[РЕШЕНО]Ни один браузер не собирается на arm с neon и thumb-2 (удалось таки собрать firefox)

Firefox выдаёт undefined reference to FastConvertYUVtoBGRRow_NEON. Webkit-gtk каким-то образом имеет thumb2-инструкции, не окружённые IT-блоком. Гугление с телефона не помогло. В links не работает буфер обмена и вставить лог не получается. Куда копать?

Система на linux-sun4i - планшет Wexlet TAB 7000 c самосборным ядром. Управление с сенсора (только правая кнопка мыши). Возможно подключение usb-hid при их наличии, но не всех (не всегда питания хватает). Rootfs - ext3 на карте памяти, планирую сменить т.к кончились иноды. Процессор основан на cortex-a8, частота 1008 MHz.

Portage конца октября, stage середины (думаю, можно обойтись без точных дат).

P.S
Ошибка возникает при линковке libxul:

planar_functions.cc:(.text.I420ToARGB+0xd0): undefined reference to `FastConvertYUVToARGBRow_NEON(unsigned char const*, unsigned char const*, unsigned char const*, unsigned char*, int)'
../../media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/planar_functions.o: In function `I420ToBGRA':
planar_functions.cc:(.text.I420ToBGRA+0xd0): undefined reference to `FastConvertYUVToBGRARow_NEON(unsigned char const*, unsigned char const*, unsigned char const*, unsigned char*, int)'
../../media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/planar_functions.o: In function `I420ToABGR':
planar_functions.cc:(.text.I420ToABGR+0xd0): undefined reference to `FastConvertYUVToABGRRow_NEON(unsigned char const*, unsigned char const*, unsigned char const*, unsigned char*, int)'

Вот фрагмент .symtab одного из объектников libyuv

    23: 00000000   180 FUNC    GLOBAL HIDDEN     4 FastConvertYUVToARGBRow_NEON
    24: 00000000   184 FUNC    GLOBAL HIDDEN     6 FastConvertYUVToBGRARow_NEON
    25: 00000000   184 FUNC    GLOBAL HIDDEN     8 FastConvertYUVToABGRRow_NEON

Как видно, они противоречат друг другу т.к данные символы на месте. Куда копать дальше?
Порывшись в коде, скопировал вышеупомянутые функции в файл, вызывавший ошибку:

row_neon.cc:(.text.FastConvertYUVToARGBRow_NEON+0x0): multiple definition of `FastConvertYUVToARGBRow_NEON'
../../media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/planar_functions.o:planar_functions.cc:(.text.FastConvertYUVToARGBRow_NEON+0x0): first defined here
../../media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/row_neon.o: In function `FastConvertYUVToBGRARow_NEON':
row_neon.cc:(.text.FastConvertYUVToBGRARow_NEON+0x0): multiple definition of `FastConvertYUVToBGRARow_NEON'
../../media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/planar_functions.o:planar_functions.cc:(.text.FastConvertYUVToBGRARow_NEON+0x0): first defined here
../../media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/row_neon.o: In function `FastConvertYUVToABGRRow_NEON':
row_neon.cc:(.text.FastConvertYUVToABGRRow_NEON+0x0): multiple definition of `FastConvertYUVToABGRRow_NEON'
../../media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/planar_functions.o:planar_functions.cc:(.text.FastConvertYUVToABGRRow_NEON+0x0): first defined here

То есть, ошибка не должна была возникать!
Чёрт ногу сломит с этой линковкой.
Собираю теперь с выпиленным описанием из исходного файла. Вроде бы дальше прошёл.
Способ решения: находим в исходниках media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/row_neon.cc и перемещаем оттуда дефайны и функции в media/webrtc/trunk/third_party/libyuv/libyuv_libyuv/source/planar_functions.cc, после чего через ebuild $(file.ebuild) merge продолжаем сборку. Получился вполне рабочий firefox, правда, называется почему-то aurora.
Возможно, ненахождение функций связано с GLOBAL HIDDEN, но не уверен.

Копайте бинарной лопатой и

Копайте бинарной лопатой и бинарным ломом. А вот когда все уляжется будете копать как нада...

бинарной лопатой - firefox-bin
бинарным ломом - их здесь Ж*пой жуй, начиная с midori...

知る者は言わず言う者は知らず
"Бабло, побеждает даже зло"

firefox-bin есть для

firefox-bin есть для cortex-a8?

Локальный оверлей растёт

Если вы не поняли, webkit

Если вы не поняли, webkit потребовался midori. C bin еще большие странности: source directory does not exist на prepare (на всех доступных версиях). Неужто ебилд кривой?

Локальный оверлей растёт

Настройка рабочих

Настройка рабочих станций

Neon, arm ...

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

А какие ещё есть категории

А какие ещё есть категории для проблем с десктопными приложениями?

Локальный оверлей растёт

/

mittorn написал(а):
А какие ещё есть категории для проблем с десктопными приложениями?

Нога это нога, но и ты хорош…
Привёл бы в вопросе претендующий на полноту набор исходных данных — не было бы нужды в бессмысленной пикировке.

:wq
--
Live free or die

/

mittorn написал(а):
В links не работает буфер обмена и вставить лог не получается.

Других текстовых не пробовал?
www-client/lynx, www-client/w3m

:wq
--
Live free or die

Что в терминал можно

Что в терминал можно вставить, не додумался. Однако в gentoo нет экранной клавиатуры с русской раскладкой (в xvkbd она почему-то не работает), а аппаратная была 2 дня недоступна, соответственно всё равно пришлось дождаться доступа к компу, чтобы слить лог. В ff бы просто испоьзовал translit.ru какой-нибудь.

Локальный оверлей растёт

/

mittorn написал(а):
Что в терминал можно вставить, не додумался.

В таком случае проблем не вижу от слова «вообще»: app-text/wgetpaste работает от браузера.

:wq
--
Live free or die

Спасибо, уже ставлю. Думаю,

Спасибо, уже ставлю.
Думаю, нет смысла продолжать обсуждать выкладывание логов т.к нужная часть логов уже выложена. К тому же браузер благополучно установлен, обновляю тему.

Локальный оверлей растёт

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".