Chinaunix首页 | 论坛 | 博客
  • 博客访问: 115710
  • 博文数量: 20
  • 博客积分: 1430
  • 博客等级: 上尉
  • 技术积分: 215
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-16 07:08
文章分类

全部博文(20)

文章存档

2011年(1)

2010年(1)

2009年(8)

2008年(10)

我的朋友

分类: BSD

2008-09-18 03:17:40

正对CPU TYPE编译优化(类似FreeBSD下CPUTYPE)
#cd /usr/pkgsrc/devel/cpuflags
#vi /etc/mk.conf *增加
 .sinclude "/usr/pkg/share/mk/cpuflags.mk"
 .sinclude "/usr/pkg/share/mk/optimize_gcc.mk"
 
 
通过设置gcc的变量,增加如下三行.它会让程序间的通讯使用管道而不是临时文件,以加快编译速度.这个不会影响最终编译好的程序
#vi /etc/mk.conf *增加
COPTS?=-pipe ${DEFCOPTS}
CFLAGS+=-pipe
CXXFLAGS+=-pipe
 
 
ccache可以缓存已经编译过的代码,在下次编译相同的代码时就可直接使用,借以加快编译速度,想在NetBSD里使用秩序如下操作
#cd /usr/pkgsrc/devel/ccache
#make install clean clean-depends
 
 
增加并行编译加速 
#vi /etc/mk.conf
MAKE_FLAGS+=-j2 #一般设置为比机器上所有的CPU数多一
 
 
如果设置优化的话.
#vi /etc/mk.conf
PKGSRC_RUN_TEST?=yes
这样会在程序编译完成后对它进行测试工作,如果出现错误的话程序本身就会提示并停止.但是需要程序本身提供测试功能,如果没有的话就不会进行测试.此项就相当于自行编译软件时的"make check"命令.用过LFS的人应该对它比较熟悉.虽然此参数会延长编译时间,但是也可避免程序不稳定.
有一点需要注意的是,有时候测试失败不是因为优化参数的问题.而是因为环境变量之类的其它原因.所以不能一概而论.还是要注意看具体的出错信息是什么,以加以判断和解决.
 
参考:
阅读(1401) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~