上次看到阿信大大說的
利用一些最佳化的設定,他說在他的電腦可以開啟mozilla在一秒作右
多麼吸引人阿,我的k6-2 400的電腦也想要....(我開mozilla要八九秒)
那要怎麼作咧,阿信大大說到利用apt-build來幫助我們build我們的套件
(我有看到阿信大大在其他地方的留言,說到apt-build就像是port的機制一樣)
我們先看看他原文的介紹吧
What is apt-build ?
apt-build is an apt-get front-end for compiling software optimised for your architecture.
This would make your softs run faster (but you will maybe not use them on different boxes than the one where the sources were compiled).
他的意思是說去根據你的電腦作最佳化
二話不說 apt-get install apt-build
在configure的時候他有問你一些最佳化的問題
例如你是用那一種cpu(應該是主要建立/etc/apt/apt-build.conf)
ok裝好了接下來怎做咧,我也不知道,看一下男人吧(man)
大概是說,可以這樣裝新的套件
apt-build install (package)
為啥我說是新的套件咧,也就是說如果你已經裝好最新的套件,他是不會理你的喔。
那要怎辦咧,我們可以利用這個option來做
apt-build -reinstall install (package)
這樣他就會下載最新的套件的src及需要用到的開發套件(太爽了,build套件就不需要管缺啥套件了)
(註:如果你已經build一次過後,reinstall這個選項似乎就沒用了,可能要用rebuild這個option,我沒用過知道的大大請說明)
如果你是安裝新的套件(也就是第一次安裝的套件)
他似乎會連一些相依的套件(也就是說你的電腦沒有的相依套件)一起build(如果有的就不重build)
因此如果你是最乾淨的debian從安裝套件就用apt-build
你全部的系統都最佳化了(爽吧)
當然你也可以利用apt-build world這個指令將你的系統整個rebuild
(註 這個應該需要建立apt-build.list
讓我們看看readme是怎寫的
Rebuilding the world:
You must create a package list.
The simplest way to do it, is to run:
dpkg --get-selections | awk '{print $1}' > /etc/apt/apt-build.list
You should edit this file to remove some packages like gcc, etc...
Note that rebuild all packages is still experimental and can break
you system.
應該是說需要建立一個apt-build.list,而這個list就是你所有的套件名稱)
我今天去rebuild mozilla 1.1(老實說1.1的速度真的有長進)
在將他重新編譯,結果load mozilla幾秒,九秒一樣(嗚嗚)
不知道是不是我只有rebuild mozilla所以快不了(他的相關套件我沒有rebuild)
(註 readme有說如果你rebuild gcc最佳化是不會有作用的)
不過rebuild mozilla真的很久ㄋㄟ(光src下載就要39MB,撥接請勿嘗試)
更何況build mozilla所花的時間了。(每次compilier一個套件都有讓我想要換電腦的感覺)
但是rebuild 後的mozilla 1.1在使用上的效率真的很不錯
(不論在切換tab或是load網頁的速度)
因此不想build的人我也強烈建議去換成mozilla 1.1(真的快好厲害)
最後一些小問題囉(我也不知道的問題)
我去修改apt-build.conf(我把o2修改成o3)
不過他在compilier的時候似乎還是用o2的最佳化
第二就是我不會修改gcc.wrapper
沒寫過perl請阿信大大教一下吧
(強烈建議:想要rebuild大的套件,電腦又不夠快的話,可以利用睡覺的時候build,如果想要apt-build world可以將你所有的套件list分成好幾分來慢慢rebuild)
看大家都在玩 apt-build,弟也蠻心動的。
不過弟有個問題,就是為甚麼大家不使用 apt-get source --compile 的方式來編譯安裝套件呢?
嘿嘿...問的好阿,原來就是......
如果使用apt-get source --compile的話,安裝好的package後,如果又打
apt-get upgrade,剛剛make好的package又會被升級成debian precompiled package,這樣就失去自己make的意義了。
如果是用apt-build的話,他會在/var/cache/apt-build建立兩個dirs
build , repository
build目錄放的是make時候的tmp files , repository是放build好的package。
而安裝apt-build之後,會在sources.list中加入
deb file:/var/cache/apt-build/repository apt-build main
這下懂了吧,就變成了自己的PC也成為了一個小小的debian package mirror了,未來如果要安裝or upgrade的話,就全部都用apt-build
apt-build install
apt-build upgrade
現在正在apt-build upgrade ,將我的qt,kde重新編譯(好久窩)
但有些像openoffice我是讓apt-build 直接抓precompiled package,因為openoffice要compile太久了。
你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=3727473