编译boost遇到g++抱怨的时候

最近在安装gentoo。安装LVM2的时候根据依赖,需要安装boost的时候,总是出错,提示:

{standard input}: Assembler messages:
{standard input}:58054: Warning: end of file not at end of a line; newline inserted
{standard input}:58879: Error: open CFI at the end of file; missing .cfi_endproc directive
x86_64-pc-linux-gnu-g++: Internal error: Killed (program cc1plus) 




经过搜索,找到了这里error on binutils emerge [Solved]

发现是内存溢出(out of memory)造成的g++不能正常工作。扩大内存或者增大swap,或者取消MAKEOPTS="-j5"就可以解决。

于是我增大的gentoo中的swap从1G到4G:

e2fsck /dev/vg/slash
resize2fs /dev/vg/slash -L10G
lvreduce -L10G /dev/vg/slash

swapoff /dev/vg/swap
lvextend -L4G /dev/vg/swap
mkswap /dev/vg/swap
swapon /dev/vg/swap

boost可以顺利编译通过。通过top查看内存使用情况,Kib Swap的used有时突破2G。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值