接下來只能用 ARM v5TE 的 DSP instruction 來作。
但是 eVC 沒有 support v5TE。
所以.. 要試試看 cegcc.
我要 用的應該是 arm-mingw32ce : 是在 Windows 的 Cygwin下 build Windows CE 的 native apps.
所以到 這裡 (還真難找),download win-cegcc-mingw32ce-0.51.0-1.tar.gz
解開是一個 opt folder (? 放到 Cygwin 下的 opt 就OK?)
沒有 for windows 的 installation guid,Linux 倒是有 (還是 安裝到 Linux ?)
就裝在 Linux 吧..
就 follow ubuntu 的好了.. 要install alien..
然後 download 兩個 rpm,,,然後
安裝很久...幾乎以為是當機..sudo alien -i cegcc-cegcc-0.51.0-1.i586.rpm mandriva-cegcc-mingw32ce-0.51.0-1.i586.rpm
裝完後..他說要自己建 symbolic link 到剛剛安裝的 path..
sudo ln -s /opt/mingw32ce/bin/* /usr/bin/
sudo ln -s /opt/cegcc/bin/* /usr/bin/
原Wiki是手動copy 所有 bin 內的 file 過去..
然後,試試看 sample.c:
#include <windows.h>build:
int WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nCmdShow)
{
MessageBoxW(0, L"HELLO!", L"H3LLO!", 0);
}
有兩個command 都可以 build ..
arm-wince-cegcc-gccbuild 出來後,第二個 command 的 target size 比較大。
arm-wince-mingw32ce-gcc
文件說build 出來的 exe 不能直接 run,需要 dll.
但是測試結果第二個 command : arm-wince-mingw32e-gcc build 出來的 sample program 可以直接 run (大概用得的 funciton 不多吧...)
文件有說明這兩個 gcc 的不同處:
In an apparent attempt to complicate matters, we implement not only the arm-wince-cegcc target (see above), but also the arm-wince-mingw32ce target. MinGW is a free software project implementing a Minimalist GNU for Windows. We're using this target to build applications that merely use the Windows CE API, not our CeGCC (newlib based) library. (Note that this is neither a full nor an official port of MinGW.)大概是說: mingw32e 版本 利用mingw 的環境,build 出只有呼叫Windows CE API 的 program,沒有呼叫cegcc 自己的api (大概是說 link 的 function 吧...)。
所以應該要用 mingw32ce 版本。
沒有留言:
張貼留言