2012年6月23日 星期六

GNU/Linux 作業系統核心(kernel) 3.4.3版本自訂Debian軟體包裹(新增更多機器的最佳化版本、理論解決64位元系統無法執行32位元可執行檔問題)


智慧財產授權條款 | Intellectual Property License

《GNU/Linux 作業系統核心(O.S. kernel) 3.4.3 版本自訂Debian軟體套件》採用
創用CC(Creative Commons)(http://creativecommons.org)組織 所規範的
創用CC姓名標示授權條款(CC BY) 3.0版本
或更新的版本。以下使用簡單易懂的文句向您說明此授權條款的內容:
您可以自由
分享(Share)
以任何方式散布及傳輸此智慧財產。
重製(Revise)
修改此智慧財產(「智慧財產授權條款」以外的部份)之任何內容。
商業性使用(Commercial usage)
使用此智慧財產營利行為中。
但是您需遵守下列限制
姓名標示(Attribution)
您必須按照授權人所指定的方式,標示授權人的名稱「……使用了「V字龍的網路日誌 | Vdragon's Internet Log」的智慧財產《GNU/Linux 作業系統核心(O.S. kernel) 3.4.3 版本自訂Debian軟體套件》」及其網路地址(),但不得以任何方式暗示此智慧財產為您或您使用此智慧財產的方式背書。
聲明(Notice)
為了再使用或散布之目的,您必須向他人清楚說明本著作所適用的授權條款。提供上方所列之創用CC的網路位址是最好的方式。
另外於下列情形下您不會受到此條款影響
免除(Waiver)
若您獲得授權人的同意,上述任何限制條件都可獲得免除。
公共領域(Public Domain)
如果當此智慧財產或其任何要素在相關法律下屬於公共領域(Public Domain),該範圍內的使用不會受到本授權條款的限制。
其他權利(Other Rights)
任何下列的權利絕不會受到本授權條款的影響:
  • 合理使用的權利
  • 作者的著作人格權
  • 其他人可能對該著作本身或該著作如何被使用所擁有的權利,例如形象權或隱私權

內容 | Content

本作品仰賴make-kpkg工具製作
This package is powered by make-kpkg tool

kernel版本 | Kernel Version

3.4.3 (穩定版本(stable version))
更新:由於3.4.4釋出,此版本的軟體包裹僅限定目前已經釋出的,將不會補全。

kernel設定選項 | Kernel Configurations

  • 基於Ubuntu 12.04LTS 當前版本的kernel配置
    based on configuration of the current Ubuntu 12.04LTS kernel
  • clock頻率改為1000Hz
    clock frequency changed to 1000Hz
  • preempt設定改為low latency
    preempt setting changed to low latency
  • CPU頻率政策改為ondemand
    CPU frequency policy changed to "on demand"
  • 沒有特別用意的加入了某些硬體的驅動程式
    added some hardware driver module in no special reason
  • 還有一些有的沒的我忘了
    some other changes forgotten by me
  • 理論上會比預設的kernel還要來得耗電,可能不適用於使用電池供電的電腦
    May consume more power than the original kernel, not suitable to computer using battery power supply
  • 預設套用了AppArmor v2.4 Capability Patch
    Default applied AppArmor v2.4 Capability Patch

已知問題 | Known Issues

  1. 如果您的開機載入程式為 burg 則安裝此kernel不會更新其開機項目清單
    解決方法:手動執行 update-burg 更新開機入程式的開機項目列表
  2. 開機時出現AppArmor Capability Patch的警告(已於+03版本修復)。
  3. make xconfig似乎會造成產生出來的header package依賴libQt(已於+05版本修復)。
  4. 64位元系統中無法執行32位元格式可執行檔(應已於此版本修正,但跟建構程序不變)

目前釋出的最新軟體包裹版本 | Currently Released Latest Software Package Version

3.4.3+06(32位元版本與64位元patch過的版本為+07,不過兩者的差異只是多了一個企鵝開機畫面)(由於起版本名稱時忘記更動製作程序版本,此版本檔名為+05的皆為+06版本)

變更紀錄 | ChangeLog

  • 3.4.1+05
    • 修正了headers軟體包裹會依賴libQt的問題
  • 3.3.7+03
    • 預設套用了AppArmor Capability Patch、新增套用了-ck Patch、BFQ Patch、UKSM Patch的版本
  • 3.3.7+02
    • 新增了套用UKSM patch的版本(不釋出)
  • 3.3.7+01
    • 理論解決 VirtualBox 作業系統核心模組無法編譯的問題(目前無AMD64版本)

下載連結 | Download Links

GNU/Linux作業系統核心的原始程式碼可以自下列網站獲得(授權條款為GPL)
http://www.kernel.org
感謝 Linux Torvalds 以及所有的支援者!
所有版本軟體包裹均存放於Mediafire共享資料夾,請依檔案名稱下載各個版本(未有對應檔案者表示尚未上傳

x86 CPU架構(32位元)(包括i386、i686、x86_64的CPU裝有32位元版本作業系統的電腦)

  • 對應的CPU架構:intel Pentium Pro 以上 (相容於大部份intel Pentium Pro以後的CPU,亦包括大部份AMD CPU)
    軟體包裹名稱:linux-*-3.4.3-generic-vdragon-mod_3.4.3+07_i386.deb
    • 套用了-ck Patch、BFQ Patch、UKSM Patch的版本
      軟體包裹名稱:linux-*-3.4.3-ck1-generic-uksm-ck-bfq-patched-vdragon-mod_3.4.3+07_i386.deb
  • 對應的CPU架構:Intel Core 2
    最近的intel CPU可以考慮裝裝看這個版本,效能會比較好一點
    軟體包裹名稱:linux-*-3.4.3-intelcore2optimized-vdragon-mod_3.4.3+07_i386.deb
    • 套用了-ck Patch、BFQ Patch、UKSM Patch的版本
      軟體包裹名稱:linux-*-3.4.3-ck1-intelcore2optimized-uksm-ck-bfq-patched-vdragon-mod_3.4.3+07_i386
  • 對應的CPU架構:AMD K8
    最近的AMD CPU可以考慮裝裝看這個版本,效能會比較好一點
    軟體包裹名稱:linux-*-3.4.3-amdk8optimized-vdragon-mod_3.4.3+07_i386.deb
    • 套用了-ck Patch、BFQ Patch、UKSM Patch的版本
      軟體包裹名稱:linux-*-3.4.3-amdk8optimized-uksm-ck-bfq-patched-vdragon-mod_3.4.3+07_i386

x86_64 CPU架構(64位元)(包括AMD64、EM64T等架構的CPU)

  • 對應的CPU架構:所有x86_64 CPU架構皆適用
    軟體包裹名稱:linux-*-3.4.3-generic-vdragon-mod_3.4.3+05_amd64.deb
    • 套用了-ck Patch、BFQ Patch、UKSM Patch的版本

  • 對應的CPU架構:Intel Core 2
    最近的intel CPU可以考慮裝裝看這個版本,效能會比較好一點
    軟體包裹名稱:linux-*-3.4.3-intelcore2optimized-vdragon-mod_3.4.3+05_amd64.deb
    • 套用了-ck Patch、BFQ Patch、UKSM Patch的版本

  • 對應的CPU架構:AMD K8
    最近的AMD CPU可以考慮裝裝看這個版本,效能會比較好一點
    軟體包裹名稱: linux-*-3.4.3-amdk8optimized-vdragon-mod_3.4.3+05_amd64.deb
    • 套用了-ck Patch、BFQ Patch、UKSM Patch的版本

安裝方式 | Installation Method

  1. 下載以取得 linux-header 跟 linux-image 開頭的兩個 Debian 軟體包裹檔案。
  2. (非必要但建議的步驟)安裝 linux-header 開頭的 Debian 軟體包裹
  3. 安裝 linux-image 開頭的 Debian 軟體包裹
  4. 重新開機,正常的話開機載入程式應該會多出安裝上去的作業系統核心的開機選項
  5. (安裝linux-header開頭軟體包裹需套用的修正)重新開機以安裝好的kernel版本的開機選項開機,下載我做的自訂kernel header安裝後修復symbolic link用script然後在終端機(模擬器)中切換到script的根目錄中以管理員(root)權限執行
  6. bash Shell_scripts/Fix_link.sh
    script本身做的只是把「/lib/modules/「kernel版本」 /build」這個symbolic link從我建構kernel時的Linux Kernel原始程式碼根目錄移到實際上「linux-headers開頭的Debian 軟體包裹」安裝kernel header的目錄「/usr/src/「kernel版本」/」。
  7. (安裝linux-header開頭軟體包裹需套用的修正)重新安裝先前因為symbolic link指向的Linux Kernel Header目錄不正確而無法成功建構的kernel module(如果有的話)。
    例如VirtualBox的kernel modules
    以系統管理員(root)權限執行
    /etc/init.d/vboxdrv setup

問題排除方式 | Troubleshooting

  • 使用安裝上去的作業系統核心的開機選項無法開機
    原因:該作業系統核心所對應的CPU架構與電腦的CPU不相容。
    解決方式:安裝合適的版本的作業系統核心
  • 第三方kernel module於此作業系統核心無法建構
    原因:沒有安裝linux-headers開頭的軟體包裹、沒有修正/lib/modules/「作業系統核心版本」/build symbolic link
    解決方式:請參考上方安裝方式

2012年6月21日 星期四

【小記 | Stub】【如何… | How to...】【未完成 | Incomplete】Ubuntu 12.04LTS 建構「全功能的GIMP 2.8」全紀錄

本文章採用的授權條款 | License applyed to this article

  • 創用CC(Creative Commons) BY 3.0 台灣版本
    Creative Commons BY 3.0 Taiwan Version
    http://creativecommons.org/licenses/by/3.0/tw/
    • 使用者應盡到的義務
      • 進行本文章的衍伸創作時需明確標明本文章原始來源與著作人
      • 明確標明本文章所採用的授權條款

文章內容 | Article Content

  1. 下載GIMP的原始程式碼並解壓縮,到原始程式碼的根目錄按照INSTALL檔案的說明操作。
  2. 下載BABL函式庫(ubuntu官方軟體倉庫中的版本太舊不能用)
  3. 使用CheckInstall與AutoApt方法建構並安裝BABL函式庫
    https://help.ubuntu.com/community/CheckInstall
    https://help.ubuntu.com/community/AutoApt
  4. 下載GEGL函式庫(ubuntu官方軟體倉庫中的版本太舊不能用)
  5. 由於直接建構GEGL函式庫會發生找不到「已被安裝的」BABL函式庫,我查資料發現大概是因為ldconfig預設不會去搜尋「/usr/local/lib」目錄的BABL函式庫導致,有兩種解決方法:
    1. 不需要系統管理員權限的方法
      於終端機(模擬器)下執行命令「export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib」
    2. 需要系統管理員權限的方法
      add /usr/local/lib to your /etc/ld.so.conf file and do sudo ldconfig
  6. 使用CheckInstall與AutoApt方法建構並安裝GEGL函式庫(同3.)
  7. 繼續按照INSTALL檔案的要求安裝各函式庫的開發用軟體包裹(大部份是lib「函式庫名稱」-dev)(好多!!!)
    apt-get install libgtk2.0-dev libgtk-3-dev libglib2.0-dev libgdk-pixbuf2.0-dev libpango1.0-dev libcairo2-dev libfreetype6-dev libfontconfig1-dev libdbus-glib-1-dev liblcms1-dev libpng12-dev libjpeg8-dev libpoppler-dev libtiff4-dev libwebkit-dev libmng-dev librsvg2-dev libwmf-dev zlib1g-dev libbz2-1.0 libgs-dev libaa1-dev libjasper-dev python-all-dev python-gtk2-dev python-gtk2-dev
    下列軟體包裹為INSTALL檔案未提到但configure程式有提到的,也給他補齊好了
    apt-get install libxpm-dev libexif-dev xvfb xsltproc
  8. 使用CheckInstall與AutoApt方法建構並安裝GIMP(同3.)

真的是全功能的GIMP了嗎?

呃應該沒有,不過我把能達成的軟體依賴性都儘量補全了
嗯果然說明文件沒有弄出來,不知道哪裡漏掉就是了

下載連結 | Download Links

由於此種建構方法打包出來的軟體包裹「非常的不正式」且「不會處理軟體依賴性」所以裝上去跑不動就請自行想辦法解決囉(補齊GIMP的其他軟體相依性)!
http://www.mediafire.com/?7j4y1n8d61o96

後記

結果 GIMP 2.8.0 還是給我常常程式崩潰,真是哭哭(而且我找不到定時備份的選項)

參考資料 | Reference Data