Ошибка «Cannot find target for triple amdgcn» в Яндекс.Браузере на AMD Radeon

Яндекс.Браузер на Linux внезапно перестаёт запускаться или выдаёт ошибку «Cannot find target for triple amdgcn». Браузер закрывается, вкладки не грузятся, а в терминале появляется сообщение о проблемах с GPU. В этой статье — только рабочие решения для AMD Radeon.

Почему возникает ошибка

Ошибка «Cannot find target for triple amdgcn» напрямую связана с конфликтом графических драйверов . Она появляется не только в Яндекс.Браузере, но и в Chrome, Brave, Discord, VLC, mpv и других Electron-приложениях .

Корень проблемы:
Яндекс.Браузер — браузер на базе Chromium. Он использует аппаратное ускорение через Mesa и VA-API. Если в системе установлены пакеты ROCm (AMD Compute Platform) или проприетарные драйверы amdgpu-install, они подменяют компоненты LLVM и Mesa .

Библиотеки начинают искать цель компиляции amdgcn-- (архитектуру GPU GCN), но нужный бэкенд LLVM отсутствует или повреждён. В результате GPU-процесс браузера падает с кодом exit_code=139 (Segmentation fault) .

Важно! Ошибка не связана с неисправностью видеокарты. Это программный конфликт между стеками ROCm и Mesa.


Способ 1. Полное удаление ROCm и AMDGPU

Это самый надёжный метод. Если вы устанавливали ROCm, amdgpu-install или любые пакеты с суффиксом -amdgpu, их необходимо удалить .

Пошаговая инструкция (Debian/Ubuntu):

  1. Откройте терминал.

  2. Выполните команду полной очистки:

bash
sudo apt purge --auto-remove \
  amdgpu-core amdgpu-install \
  comgr hip-runtime-amd hsa-rocr \
  libdrm-amdgpu-amdgpu1 libdrm-amdgpu-common \
  libdrm-amdgpu-radeon1 libdrm-amdgpu1 libdrm2-amdgpu \
  libllvm*-amdgpu \
  libva-amdgpu-drm2 libva-amdgpu-wayland2 libva-amdgpu-x11-2 libva2-amdgpu \
  libwayland-amdgpu-client0 \
  mesa-amdgpu-va-drivers \
  miopen-hip rocblas rocprofiler-sdk rocprofiler-sdk-roctx \
  rocm-core rocm-hip-runtime rocm-language-runtime rocm-smi-lib rocminfo
  1. Обновите списки пакетов и восстановите зависимости:

bash
sudo apt clean
sudo apt update
sudo apt --fix-broken install
sudo apt full-upgrade
  1. Переустановите стандартные драйверы Mesa:

bash
sudo apt install --reinstall \
  libgl1-mesa-dri \
  mesa-vulkan-drivers \
  mesa-opencl-icd \
  ocl-icd-libopencl1 \
  libclc-dev
  1. Удалите оставшиеся файлы LLVM от ROCm (если есть):

bash
sudo find /usr/lib/llvm*/ -name '*amdgcn*' -delete
sudo find /usr/lib/llvm*/ -name '*gfx*' -delete
  1. Перезагрузите систему.

После перезагрузки Яндекс.Браузер должен запуститься без ошибок .


Способ 2. Замена mesa-va-drivers-freeworld на штатные драйверы (Fedora/RPM)

В Fedora и подобных дистрибутивах ошибка часто вызвана пакетом mesa-va-drivers-freeworld из RPM Fusion. Он собран с несовместимой версией LLVM .

Решение:

bash
sudo dnf swap mesa-va-drivers-freeworld mesa-va-drivers

Эта команда заменяет проблемный пакет на штатную версию из официальных репозиториев Fedora .

После замены перезапустите браузер.


Способ 3. Временный обход через программный рендеринг

Если нужно срочно запустить браузер, а полноценное исправление требует времени, используйте временные флаги.

Вариант А. Запуск с программным рендерингом

bash
LIBGL_ALWAYS_SOFTWARE=1 yandex-browser

Браузер полностью отключит аппаратное ускорение и будет использовать CPU. Это решит проблему, но снизит производительность видео .

Вариант Б. Принудительный драйвер radeonsi

bash
MESA_LOADER_DRIVER_OVERRIDE=radeonsi yandex-browser

Это заставит Mesa использовать правильный драйвер в обход сломанного бэкенда LLVM.

Чтобы сделать настройку постоянной, отредактируйте файл запуска браузера:

bash
sudo nano /usr/share/applications/yandex-browser.desktop

Найдите строку, начинающуюся с Exec=, и добавьте переменную в начало:

text
Exec=env LIBGL_ALWAYS_SOFTWARE=1 /usr/bin/yandex-browser %U

Сравнение способов устранения ошибки

Способ Сложность Время Эффективность Когда использовать
Удаление ROCm Высокая 10–15 мин 100% Если ROCm/AMDGPU не нужны для работы
Замена mesa-va-drivers Низкая 1–2 мин 100% Только для Fedora/RPM Fusion
Программный рендеринг Низкая 1 мин Временная Для срочного запуска, тестирования

Часто задаваемые вопросы (FAQ)

Вопрос: Ошибка появляется только в Яндекс.Браузере или в других программах тоже?
Ответ: Это общая проблема всех Electron-приложений на Linux с GPU AMD. Ошибка встречается в Chrome, Brave, Discord, 1Password, VLC, mpv и многих других .

Вопрос: Мне нужен ROCm для машинного обучения. Как оставить и ROCm, и браузер?
Ответ: Изолируйте окружение. Используйте Docker, Podman или отдельный виртуальный GPU (MIG/AVD). Одновременная работа ROCm и браузера в основной системе крайне нестабильна .

Вопрос: Я ничего не устанавливал, ошибка всё равно есть. Что делать?
Ответ: Проверьте, не входит ли ROCm в состав дистрибутива (например, в специализированных сборках для AI/ML). Выполните dpkg -l | grep rocm или rpm -qa | grep rocm. Если пакеты есть — удалите.

Вопрос: Помогает ли переустановка Яндекс.Браузера?
Ответ: Нет. Ошибка на уровне системных библиотек, браузер здесь ни при чём.

Вопрос: Где скачать чистую версию браузера?
Ответ: Только с официального сайта. Используйте актуальную версию для Linux: Скачать Яндекс.Браузер.


Заключение

Ошибка «Cannot find target for triple amdgcn» в Яндекс.Браузере на AMD Radeon — следствие конфликта драйверов ROCm и Mesa. Браузер не виноват, переустановка не помогает.

Что делать:

  • Если ROCm не нужен — полностью удалите его и переустановите Mesa.

  • Если вы на Fedora — замените mesa-va-drivers-freeworld на штатный пакет.

  • Если нужно срочно — запустите браузер с флагом программного рендеринга.

После выполнения инструкций браузер снова будет стабильно работать с аппаратным ускорением.

Скачайте последнюю версию Яндекс.Браузера для Linux по официальной ссылке:
Скачать Яндекс.Браузер.