glibc não atualiza no Gentoo Linux por causa dos antigos símbolos __guard do SSP

1

Quando estou fazendo emerge -avuDN glibc sempre recebendo isto:

>>> Emerging (1 of 28) sys-libs/glibc-2.15-r3
* glibc-2.15.tar.xz SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                       [ ok ]
* glibc-ports-2.15.tar.xz SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                                 [ ok ]
* glibc-2.15-patches-23.tar.bz2 SHA256 SHA512 WHIRLPOOL size ;-) ...                                                                           [ ok ]
make -s glibc-test 
make -s glibc-test 
* Scanning system for __guard to see if you need to rebuild first ... ...                                                                      [ !! ]
* Your system still has old SSP __guard symbols.  You need to
* rebuild all the packages that provide these files first:
* //bin/busybox
* //sbin/lvm.static
* //sbin/dmsetup.static
* //sbin/dmeventd.static
* //usr/bin/diet
* //usr/bin/dnsd
* //usr/bin/elftrunc
* //usr/sbin/vdu
* //usr/sbin/vps
* //usr/sbin/vtag
* //usr/sbin/nattribute
* //usr/sbin/vattribute
* //usr/sbin/chxid
* //usr/sbin/lsxid
* //usr/sbin/showattr
* //usr/sbin/vkill
* //usr/sbin/vwait
* //usr/sbin/vcontext
* //usr/sbin/setattr
* //usr/sbin/ncontext
* //usr/sbin/exec-cd
* //usr/sbin/vmemctrl
* //usr/sbin/reducecap
* //usr/sbin/vdevmap
* //usr/sbin/vdlimit
* //usr/sbin/vlimit
* //usr/sbin/vsched
* //usr/sbin/vspace 
* //usr/sbin/vuname
* //usr/sbin/vserver-info
* //usr/sbin/vserver-stat
* //usr/sbin/vrsetup
* //usr/sbin/naddress
* //usr/lib64/liblzma.so.0
* ERROR: sys-libs/glibc-2.15-r3 failed (setup phase):
*   old __guard detected
* 
* Call stack:
*              ebuild.sh, line  93:  Called pkg_setup
*   glibc-2.15-r3.ebuild, line 175:  Called eblit-run 'pkg_setup'
*   glibc-2.15-r3.ebuild, line 161:  Called eblit-glibc-pkg_setup
*        pkg_setup.eblit, line 119:  Called die
* The specific snippet of code:
*               die "old __guard detected"
* 
* If you need support, post the output of 'emerge --info '=sys-libs/glibc-2.15-r3'',
* the complete build log and the output of 'emerge -pqv '=sys-libs/glibc-2.15-r3''.
* The complete build log is located at '/var/tmp/portage/sys-libs/glibc-2.15---r3/temp/build.log'.
* The ebuild environment file is located at '/var/tmp/portage/sys-libs/glibc-2.15-r3/temp/die.env'.
* Working directory: '/var/tmp/portage/sys-libs/glibc-2.15-r3'
* S: '/var/tmp/portage/sys-libs/glibc-2.15-r3/work/glibc-2.15'
    
por archer 09.01.2013 / 15:28

2 respostas

1

A mensagem de erro é bem clara. Alguns binários ainda estão usando símbolos (muito) antigos. Você precisa reconstruir os pacotes associados aos binários. A mensagem de erro fornece uma lista desses binários.

Agora você pode mapear o binário para um pacote com q file /bin/busybox (você precisa do app-portage / portage-utils para o comando q ).

user@host # q file /usr/bin/q
app-portage/portage-utils (/usr/bin/q)

Agora surja o pacote: emerge -1 app-portage/portage-utils

    
por 10.01.2013 / 17:08
0

O problema, conforme declarado em sua saída emerge, são os antigos protetores do SSP derivados dos pacotes listados. Existem algumas abordagens para resolver o problema. Pesquisando por aí, você pode obter muitos casos de pessoas trabalhando exatamente nesse problema. Este caso parece mais semelhante ao problema que você está tendo:

link \

Eu começaria aqui e depois examinaria os detalhes com base no seu ambiente / configurações.

    
por 09.01.2013 / 17:02

Tags