亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2802 | 回復(fù): 0
打印 上一主題 下一主題

opensolaris 內(nèi)核編譯 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2010-01-06 11:53 |只看該作者 |倒序?yàn)g覽
opensolaris 內(nèi)核編譯
作者:
Last Updated: 2008-12-10
如果有任何問題歡迎 到
http://www.opensolution.org.cn/archives/214.html
討論。。。。
我將盡快答復(fù)你。。。。
Opensolaris 做為solaris的開源版本已經(jīng)流行很久。由于其絕大部分代碼都可以看到源碼,所以在使用中由于使用問題,進(jìn)行kernel源碼的修改,重新編譯就成了需要
讓我們開始介紹opensolaris的內(nèi)核編譯
1.下載Solaris Express release 版本
現(xiàn)在最新的發(fā)行版本是snv103

http://opensolaris.org/os/downloads/
下載最新的iso,一般官方站點(diǎn)提供的是2個(gè)壓縮過的iso文件,需要解壓后合并
合并成iso文件
例如://cat file-a.iso file-b.iso file-c.iso file-d.iso file-e.iso > sxcr.iso//
刻錄成光盤
安裝要點(diǎn)
a. 磁盤需要最少10G空間
b. 最好建立單獨(dú)的分區(qū)為編譯做準(zhǔn)備 分區(qū)需要4G以上空間
c. 建立單獨(dú)的opt 分區(qū) ,編譯的工具都一般都安裝在opt下面
========================================================================
2.下載和安裝 Sun Studio 12 編譯工具
對(duì)于snv99以后最好都使用studio12 進(jìn)行編譯
下載如果是pkg包的話直接安裝即可
最新的Sun Studio12 則是 tar包,不需要安裝,解壓后即可使用 為了管理統(tǒng)一,解壓后的文件在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++ 請(qǐng)確保有 Patch 124864
3.下載源碼,解壓,安裝onbld等
當(dāng)前流通版本
http://dlc.sun.com/osol/on/downloads/current/
載x86 平臺(tái)
需要下載 至少3個(gè)文件
a.ON Specific Build Tools  工具包
b.ON Binary-Only Components (non-debug) 還沒完全開源的二進(jìn)制包
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.修改編譯時(shí)候的進(jìn)程數(shù) ,根據(jù)直接cpu的核來計(jì)算,例如4核的cpu一般改為
maxjobs() {
        ncpu=`/usr/sbin/psrinfo -p`
        expr $ncpu \* 4 + 2
}
檢查其他環(huán)境變量是是否和自己的環(huán)境一致
重點(diǎn) 如下幾個(gè)變量
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=
設(shè)置為空
修改為
BUILD_TOOLS=            /opt
至于其他關(guān)于版本等變量請(qǐng)大家根據(jù)情況自己修改即可
5.build開始
修改環(huán)境變量,使之生效
$ PATH=/opt/SUNWspro/bin:/opt/onbld/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/ccs/bin
$ export PATH
$ TERM=vt100;LINES=24;COLUMNS=80;EDITOR=vi;LANG=C;LC_ALL=C
$ export TERM LINES COLUMNS EDITOR LANG LC_ALL
$ cd /export/mybuild
使編譯需要的環(huán)境變量生效
# bldenv opensolaris.sh
# env
請(qǐng)確保 SCM_TYPE 為空
# export SCM_TYPE=
開始真正的編譯工作
/opt/onbld/bin/nightly ./opensolaris.sh &
檢查編譯中的錯(cuò)誤
tail -f logs/nightly.log |egrep “Error code|Warning”
如果出現(xiàn)Error code一般編譯不能成功
編譯是一個(gè)漫長(zhǎng)的過程,你可以去。。;蛘叩却
一般編譯完成后會(huì)在/export/mybuild 下有一個(gè)log文件,里面會(huì)有相信的編譯log和一個(gè)編譯總結(jié)的mail文件,請(qǐng)直接查看即可
cat mail_msg
==== Nightly distributed build started:   Mon Dec  1 14:21:25 CST 2008 ====
==== Nightly distributed build completed: Mon Dec  1 15:17:39 CST 2008 ====
==== Total build time ====
real    0:56:14
==== Build environment ====
/usr/bin/uname
SunOS dc-15 5.11 snv_101 i86pc i386 i86pc
/export/mybuild/usr/src/tools/proto/opt/onbld/bin/nightly ./opensolaris.sh
-r-xr-xr-x   1 root     root       89641 Dec  1 11:47 /export/mybuild/usr/src/tools/proto/opt/onbld/bin/nightly
/opt/SUNWspro/bin/dmake
dmake: Sun Distributed Make 7.8 SunOS_i386 Patch 126504-01 2007/07/19
number of concurrent jobs = 4
32-bit compiler
/opt/onbld/bin/i386/cw -_cc
cw version 1.27
primary: /opt/SUNWspro/bin/cc
cc: Sun C 5.9 SunOS_i386 Patch 124868-07 2008/10/07
shadow: /usr/sfw/bin/gcc
gcc (GCC) 3.4.3 (csl-sol210-3_4-20050802)
64-bit compiler
/opt/onbld/bin/i386/cw -_cc
cw version 1.27
primary: /opt/SUNWspro/bin/cc
cc: Sun C 5.9 SunOS_i386 Patch 124868-07 2008/10/07
shadow: /usr/sfw/bin/gcc
gcc (GCC) 3.4.3 (csl-sol210-3_4-20050802)
/usr/java/bin/javac
java full version “1.6.0_10-b33″
/usr/ccs/bin/as
as: Sun Compiler Common 12 SunOS_i386 snv_93 06/19/2008
/usr/ccs/bin/ld
ld: Software Generation Utilities - Solaris Link Editors: 5.11-1.1624
Build project:  user.root
Build taskid:   87
==== Nightly argument issues ====
Warning: the N option (do not run protocmp) is set; it probably shouldn’t be
WARNING: DEBUG build not requested; disabling lint.
==== Build version ====
mybuild
==== Make clobber ERRORS ====
==== Make tools clobber ERRORS ====
==== Tools build errors ====
==== Build errors (non-DEBUG) ====
==== Build warnings (non-DEBUG) ====
==== Elapsed build time (non-DEBUG) ====
real    50:41.6
user  2:59:05.7
sys     45:31.6
==== Build noise differences (non-DEBUG) ====
==== Check ELF runtime attributes ====
==== Diff ELF runtime attributes (since last build) ====
==== cstyle/hdrchk errors ====
==== Find core files ====
==== Impact on file permissions ====
6.安裝新內(nèi)核
# PATH=/opt/SUNWspro/bin:/opt/onbld/bin:/usr/ccs/bin:/usr/sbin:/usr/bin
# export PATH
# FASTFS=/opt/onbld/bin/`uname -p`/fastfs;export FASTFS
# BFULD=/opt/onbld/bin/`uname -p`/bfuld;export BFULD
# GZIPBIN=/usr/bin/gzip;export GZIPBIN
#
# env
BFULD=/opt/onbld/bin/i386/bfuld
FASTFS=/opt/onbld/bin/i386/fastfs
GZIPBIN=/usr/bin/gzip
HOME=/
HZ=
LANG=C
LC_ALL=C
LOGNAME=root
MAIL=/var/mail/root
PATH=/opt/SUNWspro/bin:/opt/onbld/bin:/usr/ccs/bin:/usr/sbin:/usr/bin
SHELL=/sbin/sh
TERM=vt100
TZ=Canada/Eastern
# /opt/onbld/bin/bfu /export/mybuild/archives/`uname -p`/nightly-ng/
結(jié)束后出現(xiàn)buf# kbfu#
檢查編譯結(jié)果更新配置文件在buf#提示符號(hào) 下執(zhí)行 ksh /opt/onbld/bin/acrr
reboot
如果一切順利的話將從新的kernel啟動(dòng)。。。。。
如果你不想編譯整個(gè)kerenel的話也可以編譯部分
大體過程如下
解壓好源碼
Building the kernel
1. bldenv -d ./opensolaris.sh
2. cd usr/src/uts
3. dmake all
Building the tools
1. cd usr/src/tools
2. dmake all
Booting
在 usr/src/uts下
1. Install -G my.kernel -k i86pc
2. su
3. cd /
4. tar xf /tmp/Install.my.kernel .
5. gedit /boot/solaris/filelist.ramdisk
6. add /platform/i86pc/my.kernel to the end
7. gedit /boot/grub/menu.lst
8. add an entry pointing kernel to my.kernel
9. reboot
最近的更新請(qǐng)參考
http://www.opensolution.org.cn/archives/214.html
也歡迎您糾錯(cuò),我也將盡快修改掉。。。。

本文來自ChinaUnix博客,如果查看原文請(qǐng)點(diǎn):http://blog.chinaunix.net/u3/109695/showart_2141747.html
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP