LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 741|回复: 5

极小内存编译问题

[复制链接]
发表于 2009-12-30 11:11:52 | 显示全部楼层 |阅读模式
小弟最近搞了一个vps玩,由于是基于openvz的,所以不能用swap。

而内存只有128M,一超就撞墙。哪位兄弟有这种极小内存下的编译经历,现在只要是gcc 没法编译过去,到一定时候就把out of memory。其它包都可以distcc到我的电脑上搞。

我不想用debian什么的。。。。。

ps,在网上搜的min-heap-size min-heap-expand方法也不行。
发表于 2009-12-30 12:11:31 | 显示全部楼层
虚拟机分大点内存,尽量不编c++(特别是boost)程序。48M内存的开发板都可以用gcc 4.4,如果128M什么都不能编就有问题了。
不过你如果在vm里跑gentoo的emerge情况就不同了。emerge是python写的,自身就要占用几十MB内存。
回复 支持 反对

使用道具 举报

发表于 2009-12-30 13:04:39 | 显示全部楼层
我倒是觉得还是在PC上用交叉编译,这种嵌入式的设备还是直接安装编译好的二进制包。直接在那上面编译花的时间比较长。
回复 支持 反对

使用道具 举报

发表于 2009-12-30 14:18:14 | 显示全部楼层
Post by tintin365;2060516
小弟最近搞了一个vps玩,由于是基于openvz的,所以不能用swap。
而内存只有128M,一超就撞墙。哪位兄弟有这种极小内存下的编译经历,现在只要是gcc 没法编译过去,到一定时候就把out of memory。其它包都可以distcc到我的电脑上搞。
我不想用debian什么的。。。。。
ps,在网上搜的min-heap-size min-heap-expand方法也不行。


低配置的机器,编译速度慢,一般不会用他们编译,唯一的好处是简单,因为一般来说编译脚本不用修改就可以直接用。

如果说整这个编译都那么费事的话,还是用交叉编译更实在。毕竟交叉编译虽然麻烦点,但总归是一条被验证确保可行的方法。
回复 支持 反对

使用道具 举报

发表于 2009-12-30 14:43:05 | 显示全部楼层
在自己机器上做一个 openvz templates stage4 先。避免编译gcc不就完了:)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-12-31 10:21:15 | 显示全部楼层
恩,我现在所有程序都distcc编,反正不用本地gcc了。。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表