Alpine 3.8.0: Instalando o aplicativo, obtendo o erro: “Não é possível gerar metadados ORC para CONFIG_UNWINDER_ORC = y”

1

Estou tentando instalar o VirtualBox (o host, não o cliente) em uma instalação limpa do Alpine 3.8.0 Standard. Estou usando o VirtualBox-5.2.12-122591-Linux_amd64.run, baixado do link sob plataformas Linux > Todas as distribuições > 64 bits.

O instalador relatou vários erros, que até agora resolvi instalando os seguintes pacotes.

  • coreutils (para obter o readlink com o sinalizador -e disponível)
  • fazer
  • gcc
  • perl
  • linux-headers (provavelmente não foi necessário)
  • linux-vanilla-dev

O instalador também relatou:

/opt/VirtualBox/vboxdrv.sh line 501: can't create /etc/udev/rules.d/60-vboxdrv.rules: \
nonexistent directory.

Qual eu resolvi simplesmente executando:

mkdir -p /etc/udev/rules.d

Cada vez que o instalador falha, ele diz para executar o / sbin / vboxconfig para reiniciar o processo de instalação. Atualmente, quando faço isso, gera:

* service vboxdrv added to runlevel default
* service vboxballoonctrl-service added to runlevel default
* service vboxautostart-service added to runlevel default
* service vboxweb-service added to runlevel default
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: Look at /var/log/vbox-install.log to find out what went wrong.
There were problems setting up VirtualBox.  To re-start the set-up process, run \
/sbin/vboxconfig as root.

/var/log/vbox-install.log contém:

make V=1 CONFIG_MODULE_SIG= -C /lib/modules/4.14.52-0-vanilla/build SUBDIRS=/tmp/vbox.0 \
SRCROOT=/tmp/vbox.0 -j1 modules
getconf: LFS_CFLAGS: unknown variable
getconf: LFS_LDFLAGS: unknown variable
getconf: LFS_LIBS: unknown variable
Makefile:948: *** "Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y, please install \
libelf-dev, libelf-devel or elfutils-libelf-devel."  Stop.
make: *** [/tmp/vbox.0/Makefile.include.footer:101: vboxdrv] Error 2

Eu não consigo resolver o problema mesmo instalando o libelf-dev. Por link , não há nenhum pacote libelf-devel ou elfutils-libelf-devel.

Separadamente, parece que não consigo ter o elfutils-dev e o libelf-dev instalados ao mesmo tempo. Se eu instalar uma e depois a outra, as saídas do apk:

ERROR: elfutils-dev-0.168-r1: trying to overwrite usr/lib/libelf.so owned by \
libelf-dev-0.8.13-r3.
ERROR: elfutils-dev-0.168-r1: trying to overwrite usr/lib/libelf.a owned by \
libelf-dev-0.8.13-r3.
ERROR: elfutils-dev-0.168-r1: trying to overwrite usr/include/libelf.h owned by \
libelf-dev-0.8.13-r3.
ERROR: elfutils-dev-0.168-r1: trying to overwrite usr/include/gelf.h owned by \
libelf-dev-0.8.13-r3.
ERROR: elfutils-dev-0.168-r1: trying to overwrite usr/include/nlist.h owned by \
libelf-dev-0.8.13-r3.

Isso é um problema porque o elfutils-dev é requerido pelo linux-vanilla-dev, que por sua vez parece ser requerido pelo / sbin / vboxconfig. Se eu rodar o / sbin / vboxconfig sem o linux-vanilla-dev instalado, ele mostrará:

...
vboxdrv.sh: Building VirtualBox kernel modules.
This system is currently not set up to build kernel modules.
Please install the Linux kernel "header" files matching the current kernel for adding new \
hardware support to the system.

Para tentar resolver isso, eu:

  1. Desinstalado linux-vanilla-dev.
  2. Instalado libelf-dev.
  3. Reinstalado linux-vanilla-dev.

linux-vanilla-dev e todas as suas dependências instaladas com sucesso, exceto para elfutils-dev, como esperado. Eu não estou ciente de quaisquer problemas causados por não ter o elfutils-dev instalado, e eu suponho que ter o libelf-dev instalado é mais importante, já que esse é o pacote referido na mensagem de erro em /var/log/vbox-install.log .

No entanto, quando eu executo / sbin / vboxconfig, o vboxdrv.sh ainda falha com "Não é possível gerar metadados ORC para CONFIG_UNWINDER_ORC = y, por favor, instale libelf-dev, libelf-devel ou elfutils-libelf-devel." Isto apesar de eu ter o libelf-dev instalado (ou assim eu acredito).

Em exibição:

apk info | grep 'libelf-dev'

Saídas:

libelf-dev

A execução do apk apk faz com que o apk tente reinstalar o elfutils-dev, que falha (por motivos descritos anteriormente), mas não apresenta outros problemas.

Eu baixei o VirtualBox-5.2.12-122591-Linux_amd64.run para uma caixa do Windows e o abri com o 7-Zip e extraii o postinst-common.sh (que eu acredito ser o mesmo arquivo que o / sbin / vboxconfig) e vboxdrv.sh. Eu não vejo uma maneira de anexá-los, mas posso acrescentar o conteúdo deles (cerca de 600 linhas no total) se alguém achar que seria útil.

Por favor, deixe-me saber se posso fornecer qualquer informação adicional. Eu ainda estou trabalhando nisso, então se eu aprender mais, eu adicionarei. Meus próximos passos atuais são:

  1. Investigue o vboxdrv.sh para ver se consigo encontrar o que ele faz para acionar esse erro.
  2. Tente usar o strace.

Obrigado!

Editar:

  • postinst-common.sh aka / sbin / vboxconfig: link
  • vboxdrv.sh: link
por FSharpN00b 12.07.2018 / 09:22

2 respostas

1

tente instalar: apk add g ++

install next pakages:

(1/3) Instalando o musl-dev (1.1.20-r0) (2/3) Instalando o libc-dev (0.7.1-r0) (3/3) Instalando o g ++ (6.4.0-r8)

depois de instalar o pakages, tente executar novamente o script de instalação do VirtualBox

    
por 12.09.2018 / 15:31
1

TLDR; você precisa instalar o musl-dev .

Eu estava construindo um módulo do kernel e recebi a mesma mensagem de erro ( Cannot generate ORC metadata for CONFIG_UNWINDER_ORC=y ). Tudo o que eu precisava fazer era executar apk add musl-dev para compilar. A correção sugerida (seja por make ou gcc eu não sei) está errada e desperdiçou seu tempo e o meu. As dependências elf adequadas já foram especificadas pelo kernel -dev packages (por exemplo, linux-virt-dev ou linux-vanilla-dev ).

    
por 14.09.2018 / 13:05