快速业务通道

Opensolaris 内核编译

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-04-30

Opensolaris 做为solaris的开源版本已经流行很久.其绝大部分代码都可以看到源码,在使用中使用问题,进行kernel源码的修改,重新编译就成了需要

让我们开始介绍opensolaris的内核编译

1.下载Solaris Express release 版本

从 http://opensolaris.org/os/downloads/ 下载最新的iso,一般官方站点提供的是2个压缩过的iso文件,需要解压后合并

合并成iso文件

例如://cat file-a.iso file-b.iso file-c.iso file-d.iso file-e.iso > sxcr.iso//

刻录成光盘

安装要点

a. 磁盘需要最少10G空间

b. 最好建立单独的分区为编译做准备 分区需要4G以上空间

c. 建立单独的opt 分区 ,编译的工具都一般都安装在opt下面

2.下载和安装 Sun Studio 12 编译工具

对于snv99以后最好都使用studio12 进行编译

下载如果是pkg包的话直接安装即可

最新的Sun Studio12 则是 tar包,不需要安装,解压后即可使用 为了管理统一,解压后的文件在opt下建立link SUNWspro -> sunstuido

# cd /opt

# mkdir sunstuido

# cd sunstuido

# gzcat -zxf $HOME/sunstudio11-ii-x86.tar.gz |tar -xf -

# ln -s sunstuido SUNWspro

# /opt/SUNWspro/bin/cc -V

cc: Sun C 5.9 SunOS_i386 Patch 124868-07 2008/10/07

usage: cc [ options] files. Use ‘cc -flags’ for details
# /opt/SUNWspro/bin/CC -V

CC: Sun C 5.9 SunOS_i386 Patch 124864-07 2008/08/22

无论是cc 还是C 请确保有 Patch 124864

3.下载源码,解压,安装onbld等

当前流通版本

http://dlc.sun.com/osol/on/downloads/current/
载x86 平台

需要下载 至少3个文件

a.ON Specific Build Tools 工具包

b.ON Binary-Only Components (non-debug) 还没完全开源的二进制包

c.ON Source 源码

解压刚才下载的这些文件

# cd /export/mybuild

$ bzcat $HOME/snv-20060918/on-src*.tar.bz2 | tar -xf -

$ bzcat $HOME/snv-20060918/on-closed-bins*.i386.tar.bz2 | tar -xf -

安装onbld 工具包

# cd /tmp

#bzcat $HOME/SUNWonbld-*.i386.tar.bz2 | tar -xf -
# pkgadd -d onbld SUNWonbld

4.修改 opensolaris.sh 脚本,Makefile.master文件

$ cd /export/mybuild

$ cp usr/src/tools/env/opensolaris.sh .

修改opensolaris.sh 文件

a.修改GATE=testws; export GATE

为GATE=mybuild; export GATE

b.修改编译时候的进程数 ,根据直接cpu的核来计算,例如4核的cpu一般改为

maxjobs() {

ncpu=`/usr/sbin/psrinfo -p`

expr $ncpu * 4 2
}

检查其他环境变量是是否和自己的环境一致

重点 如下几个变量

BUILD_TOOLS=/opt; export BUILD_TOOLS

ONBLD_TOOLS=/opt/onbld; export ONBLD_TOOLS

SPRO_ROOT=/opt/SUNWspro; export SPRO_ROOT

SPRO_VROOT=$SPRO_ROOT; export SPRO_VROOT

修usr/src/Makefile.master文件

将#__SSNEXT= $(POUND_SIGN)

__SSNEXT=

设置为空

修改为

BUILD_TOOLS= /opt

至于其他关于版本等变量请大家根据情况自己修改即可

5.build开始

修改环境变量,使之生效

$ PATH=/opt/SUNWspro/bin:/opt/onbld/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/ccs/bin

$ ex

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号