提問之前請先閱讀網友常問的問題







目前分類:mingw (8)

瀏覽方式: 標題列表 簡短摘要

GCC 編譯程式的速度依賴於 CPU 的速度,所以首先 CPU 的選擇上應選用每時脈效能高的 CPU,如 Intel Core2 Duo。然後就是通過將 CPU 超頻來提高 CPU 的速度。

偶們通常在 ./configure 後,接 make 開始編譯。在編譯過程中偶觀察到雙核心 CPU 的使用率只有 50%,為使編譯過程能夠使用到 CPU 的全部兩個核心,偶使用 make -j2 進行編譯,這樣 CPU 使用率 100% 得到完全利用、編譯速度變快。相應地四核心 CPU 應使用 make -j4 進行編譯,偶無四核心 CPU,無法確認,使用者可開啟工作管理員觀察 CPU 使用率是否 100%。

注意不要使用超出 CPU 能力的 make -jn,如雙核心 CPU 就不要使用 make -j3,這樣電腦會假死,什麼都不能作。

呆丸北拜 發表在 痞客邦 留言(0) 人氣()

首先下載 ffmpeg 0.5 的原始碼,官方載點:http://ffmpeg.org/releases/ffmpeg-0.5.tar.bz2

編譯的最基本選項。(以下所述皆為靜態編譯,得到的 ffmpeg.exe 可獨立執行。不編譯 dll)

./configure --enable-memalign-hack --extra-cflags=-fno-common
make
make install

--enable-memalign-hack,若無此項無法編譯;-fno-common 為應對一個 GCC 的 bug


呆丸北拜 發表在 痞客邦 留言(4) 人氣()

MinGW 需要以下軟體包:binutils, mingw-runtime, w32api, gcc-core, gcc-g++.

  1. binutils-2.19.1-mingw32-bin.tar.gz
  2. mingwrt-3.15.2-mingw32-dev.tar.gz
  3. mingwrt-3.15.2-mingw32-dll.tar.gz
  4. w32api-3.13-mingw32-dev.tar.gz
  5. gcc-part-core-4.3.0-20080502-2-mingw32-alpha-bin.tar.gz
  6. gcc-part-c++-4.3.0-20080502-2-mingw32-alpha-bin.tar.gz


新增一個資料夾命名為 mingw。將下載的軟體包複製到 mingw 資料夾中並全部解壓縮。偶使用 7-zip 解壓縮,選取全部壓縮檔,7-zip 右鍵菜單中選擇解壓縮至此,得到 tar 檔案;再選取全部 tar 檔案重複上述解壓縮過程,當遇到提示是否覆蓋檔案時選擇全部皆是。解壓縮完成後將 mingw 資料夾中的軟體包刪除。

安裝 MSYS 1.0.10,安裝路徑偶使用 R:\msys。你可以使用你喜歡的,但要注意路徑中不能有空格。接下來的 post install process 選「y」,問你 MingW 是否已經安裝依然選「y」;將之前的 mingw 資料夾移動到 msys 資料夾中,出現確認取代資料夾的提示時選擇全部取代;然後回到 post install process 視窗,填入 MingW 的路徑為 r:/msys/mingw。

呆丸北拜 發表在 痞客邦 留言(0) 人氣()

基於 texi2html 1.66 修改。去除頁尾的「About this document」部份;移除每一段後面插入的導航條;美化每段之間用於隔開段落的 <hr> 水平線;連結取消下劃線並改進顏色;美化時間格式,移除以英文表示的月份後面的逗號。

texi2html 1.66 以後的版本取消了目錄,1.66 版是目前有目錄的最新版本,它是將目錄放在每一頁的最下方,不同於 1.56k 是將目錄放在每一頁最上方。個人認為目錄放在最下方比較好,對於不甚瞭解的內容先看目錄不如先將文檔內容瀏覽一遍。因為 texi2html 生成的基本上都是小型文檔所以還好,大型文檔還是應該將目錄放在每一頁的最上方。

效果演示:

呆丸北拜 發表在 痞客邦 留言(1) 人氣()

在 MSYS 中,按下鍵盤上的 Home、End 鍵,只會顯示「~」。

使用記事本開啟 msys\etc\profile,於末尾加入一行。

export INPUTRC=/etc/inputrc.default


重新啟動 MSYS 即可看到效果。

呆丸北拜 發表在 痞客邦 留言(0) 人氣()

首先去官網下載 FAAC 的原始碼,務必下載 TAR.BZ2 壓縮檔。
http://www.audiocoding.com/downloads.html

解壓縮後得到資料夾 faac-1.28,開啟 MSYS。

$ cd faac-1.28


呆丸北拜 發表在 痞客邦 留言(0) 人氣()

patch_file 中使用相對路徑來定義需要打補丁的檔案位置。

例:一個 patch_file 的檔案頭部,需要打補丁的檔案為 faac-1.28/common/mp4v2/mpeg4ip_win32.h

diff -urN faac-1.28.orig/common/mp4v2/mpeg4ip_win32.h faac-1.28/common/mp4v2/mpeg4ip_win32.h
--- faac-1.28.orig/common/mp4v2/mpeg4ip_win32.h Sun Jan 25 10:14:34 2009

呆丸北拜 發表在 痞客邦 留言(0) 人氣()

對編譯後生成的執行檔使用 strip 命令

strip -s 執行檔.exe


編譯前給 GCC 加入 CFLAGS「-s」。臨時調用可以使用 CC 搭配 configure

CC='gcc -s' ./configure


無論使用「strip -s」還是「gcc -s」,最終得到的檔案大小都相同。strip 和 gcc 的 -s 參數還可以寫作 --strip-all。

呆丸北拜 發表在 痞客邦 留言(0) 人氣()