利用Poseidon編譯新版的DWT(Base on SWT3.3.2)

如不習慣安裝及使用DSSS,可以試著用Poseidon編譯新的DWT:


1. 首先假設您還沒下載DMD及Tango,請到[url]http://downloads.dsource.org/projects/tango/snapshots/tango-bin-win32-CURRENT-dmd.1.029.zip[/url]下載DMD及Tango的同捆包並安裝,假設我安裝在D:\DMD1029Tango底下.

2. 到[url]http://hg.dsource.org/projects/dwt-win/archive/tip.zip[/url]下載dwt-win,然後把zip檔中的dwt安裝到D:\DMD1029Tango\import底下(變成dwt-win位於D:\DMD1029Tango\import\dwt)

3. 下載額外的庫到[url]http://downloads.dsource.org/projects/dwt/dwt-win-importlibs.zip[/url]並解開到D:\DMD1029Tango\lib底下,並覆蓋原有的庫.

4. 開啟poseidon,開啟專案,把專案目錄設為D:\DMD1029Tango\import\dwt,把專案Type設為Static Library, 並按下最右下的Import All自動載入所有新的dwt的文件.

5. 編譯release版本或偵錯版本請記得把專案名稱重新命名.

6. 到Compiler options設定,如要編譯release版本,就勾選-O -realease -inline,偵錯版本就請勾選-debug -g, 之後也把-op打勾.

7. 到Lib Options,將set page size勾選,並雙擊設定page size,release版設為128;偵錯版設為256

8. 按下OK儲存設定結果,此時parser設定若有選擇Use Autocompletion會開始分析,需要一點時閒,此時會類似當機,請耐心等一下(我的多線程程式碼在這裡老是導致Poseidon crash,我也不知為什麼?....... :x )

9. 文檔載入後,開啟DWT.d,修改下列源碼:
把:
version(build){
pragma(link, "advapi32");
pragma(link, "comctl32");
pragma(link, "comdlg32");
pragma(link, "gdi32");
pragma(link, "kernel32");
pragma(link, "shell32");
pragma(link, "ole32");
pragma(link, "oleaut32");
pragma(link, "olepro32");
pragma(link, "oleacc");
pragma(link, "user32");
pragma(link, "usp10");
pragma(link, "msimg32");
pragma(link, "opengl32");
pragma(link, "shlwapi");
//pragma(link, "gdiplus"); // load dynamic
//pragma(link, "uxtheme"); // load dynamic
}


改成:
version(build){
pragma(link, "advapi32");
pragma(link, "comctl32");
pragma(link, "comdlg32");
pragma(link, "gdi32");
pragma(link, "kernel32");
pragma(link, "shell32");
pragma(link, "ole32");
pragma(link, "oleaut32");
pragma(link, "olepro32");
pragma(link, "oleacc");
pragma(link, "user32");
pragma(link, "usp10");
pragma(link, "msimg32");
pragma(link, "opengl32");
pragma(link, "shlwapi");
//pragma(link, "gdiplus"); // load dynamic
//pragma(link, "uxtheme"); // load dynamic
}
else
{
pragma(lib, "advapi32");
pragma(lib, "comctl32");
pragma(lib, "comdlg32");
pragma(lib, "gdi32");
pragma(lib, "kernel32");
pragma(lib, "shell32");
pragma(lib, "ole32");
pragma(lib, "oleaut32");
pragma(lib, "olepro32");
pragma(lib, "oleacc");
pragma(lib, "user32");
pragma(lib, "usp10");
pragma(lib, "msimg32");
pragma(lib, "opengl32");
pragma(lib, "shlwapi");
}


10. 記得把Poseidon內的DMD Path及DMC Path設定到剛安裝的DMD目錄上,按下ReBuild開始編譯!完成後即可得到庫.

11. 其它不同的庫其實也可以應用上述的方法,Enjoy...... :D
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值