emerge 更新gcc_Gentoo更新portage记录

小记一下这两天更新服务器版本遇到的各种问题。

服务器系统: Gentoo

第一天

其实本来不打算更新系统的,因为最近想试试免费的SSL证书,于是自然而然搜到了letsencrypt,跟着他们的流程需要安装

$ sudo emerge -av app-crypt/certbot app-crypt/certbot-nginx

运行了下,结果给出的错误是:

!!! The following installed packages are masked:

- sys-devel/gcc-4.4.5::gentoo (masked by: package.mask)

/usr/portage/profiles/package.mask:

# Michał Górny , Andreas K. Hüttel ,

# Matthias Maier (21 May 2017 and later updates)

# These old versions of toolchain packages (binutils, gcc, glibc) are no

# longer officially supported and are not suitable for general use. Using

# these packages can result in build failures (and possible breakage) for

# many packages, and may leave your system vulnerable to known security

# exploits.

# If you still use one of these old toolchain packages, please upgrade (and

# switch the compiler / the binutils) ASAP. If you need them for a specific

# (isolated) use case, feel free to unmask them on your system.

- sys-libs/glibc-2.23-r3::gentoo (masked by: package.mask)

- dev-perl/DBD-mysql-4.41.0::gentoo (masked by: package.mask)

/usr/portage/profiles/package.mask:

# Kent Fredric (27 May 2018)

# Subject to Man-in-the-middle security bypass vulnerability.

# Retained in tree only for users who need older versions

# for compatibility reasons.

# Bug: #623942

- sys-devel/gcc-4.5.4::gentoo (masked by: package.mask)

- sys-devel/binutils-2.26.1::gentoo (masked by: package.mask)

For more information, see the MASKED PACKAGES section in the emerge

man page or refer to the Gentoo Handbook.

看到这个错误我还是懵的状态,不懂什么意思,然后网上一通乱搜之后,糊里糊涂的觉得是不是应该更新一下portage树,于是运行如下命令:

$ sudo emerge --sync

$ sudo emerge --depclean

$ sudo emerge --update --newuse --deep --with-bdeps=y @world

肯定是没成功的,但是的错误信息跟之前的类似,意思就是要我去更新Protage版本。

第二天

又开始来折腾了,我这不达目的不罢休的精神也是可嘉。

网上开始搜索如何更新portage

$ sudo emerge -1v portage

打开man emerge, -l 的选项意思如下

--changelog(-l)

Use this in conjunction with the --pretendoption.  This will  show  the

ChangeLog entries for all the packages that will be upgraded.

上面命令的结果还是关于 EAPI

!!! Repository 'x-portage' is missing masters attribute in '/usr/local/portage/metadata/layout.conf'

!!! Set 'masters = gentoo' in this file for future compatibility

* IMPORTANT: 5 news items need reading for repository 'gentoo'.

* Use eselect news read to view new items.

These are the packages that would be merged, in order:

Calculating dependencies... done!

!!! All ebuilds that could satisfy "app-eselect/eselect-pinentry" have been masked.

!!! One of the following masked packages is required to complete your request:

- app-eselect/eselect-pinentry-0.7::gentoo (masked by: EAPI 7)

The current version of portage supports EAPI '6'. You must upgrade to a

newer version of portage before EAPI masked packages can be installed.

(dependency required by "app-crypt/pinentry-1.1.0-r2::gentoo" [ebuild])

(dependency required by "app-crypt/gnupg-2.2.10::gentoo" [ebuild])

(dependency required by "sys-apps/portage-2.3.51-r1::gentoo[-build,rsync-verify]" [ebuild])

(dependency required by "portage" [argument])

For more information, see the MASKED PACKAGES section in the emerge

man page or refer to the Gentoo Handbook.

sudo emerge --sync

sudo emerge -qav python

sudo USE='-rsync-verify' emerge -qavO portage

sudo emerge -qav portage

$ sudo emerge -qav python

这一步虽然有warning消息提示我有几个package被masked了,但是最终python还是安装成功了,结果如下:

Password:

!!! Repository 'x-portage' is missing masters attribute in '/usr/local/portage/metadata/layout.conf'

!!! Set 'masters = gentoo' in this file for future compatibility

* IMPORTANT: 5 news items need reading for repository 'gentoo'.

* Use eselect news read to view new items.

[ebuild U ] sys-devel/automake-1.15.1-r2 [1.15] USE="{-test%}"

[ebuild NS ] dev-lang/python-3.6.5 [2.7.14-r1, 3.1.3-r1, 3.4.5-r1] USE="gdbm ipv6 ncurses readline sqlite ssl (threads) xml -build -examples -hardened -libressl {-test} -tk -wininst"

!!! The following installed packages are masked:

- sys-devel/gcc-4.8.5::gentoo (masked by: package.mask)

/usr/portage/profiles/releases/17.0/package.mask:

# Andreas K. Huettel (27 May 2017)

# In the 17.0 profiles we assume that our system compiler uses C++14

# or later as default language setting. This means it has to be at

# least GCC 6. If you need an older compiler for specific purposes,

# feel free to unmask it, however, using it for normal emerging of

# packages is neither recommended nor supported in any way.

- sys-devel/binutils-2.29.1-r1::gentoo (masked by: package.mask)

/usr/portage/profiles/package.mask:

# Michał Górny , Andreas K. Hüttel ,

# Matthias Maier (21 May 2017 and later updates)

# These old versions of toolchain packages (binutils, gcc, glibc) are no

# longer officially supported and are not suitable for general use. Using

# these packages can result in build failures (and possible breakage) for

# many packages, and may leave your system vulnerable to known security

# exploits.

# If you still use one of these old toolchain packages, please upgrade (and

# switch the compiler / the binutils) ASAP. If you need them for a specific

# (isolated) use case, feel free to unmask them on your system.

- sys-devel/gcc-4.5.4::gentoo (masked by: package.mask)

- sys-libs/glibc-2.25-r10::gentoo (masked by: package.mask)

For more information, see the MASKED PACKAGES section in the emerge

man page or refer to the Gentoo Handbook.

Would you like to merge these packages? [Yes/No] yes

>>> Recording dev-lang/python in "world" favorites file...

>>> Verifying ebuild manifests

>>> Emerging (1 of 2) sys-devel/automake-1.15.1-r2::gentoo

>>> Installing (1 of 2) sys-devel/automake-1.15.1-r2::gentoo

>>> Emerging (2 of 2) dev-lang/python-3.6.5::gentoo

>>> Installing (2 of 2) dev-lang/python-3.6.5::gentoo

>>> Jobs: 2 of 2 complete Load avg: 2.01, 1.30, 0.63

* Messages for package dev-lang/python-3.6.5:

* You have just upgraded from an older version of Python.

*

* Please adjust PYTHON_TARGETS (if so desired), and run emerge with the --newuse or --changed-use option to rebuild packages installing python modules.

!!! existing preserved libs found

* IMPORTANT: 5 news items need reading for repository 'gentoo'.

* Use eselect news read to view new items.

标签:emerge,Gentoo,gentoo,package,portage,更新,masked,packages

来源: https://www.cnblogs.com/amanda-meng/p/10413087.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值