[新闻] dxpcom v0.1 发布
h_rain
2007-04-25
G:\rain\D_XpCOM>bud buildlib.brf src\mozilla\xpcom\nsIDOMCSSPrimitiveValue.d(102):Error:identifier 'nsIDOMCounter' is not defined src\mozilla\xpcom\nsIDOMCSSPrimitiveValue.d(102):Error:nsIDOMCounter is used as a type src\mozilla\xpcom\nsIDOMCSSPrimitiveValue.d(105):Error:identifier 'nsIDOMRect' is not defined src\mozilla\xpcom\nsIDOMCSSPrimitiveValue.d(105):Error:nsIDOMRect is used as a type src\mozilla\xpcom\nsIDOMCSSPrimitiveValue.d(108):Error:identifier'nsIDOMRGBColor'is not defined src\mozilla\xpcom\nsIDOMCSSPrimitiveValue.d(108):Error:nsIDOMRGBColor is usedas a type src\mozilla\all.d(725):module nsIMsgWindowData cannot read file'mozilla\xpcom\nsIMsgWindowData.d' :( 你那没问题吗?SVN里面没有nsIMsgWindowData.d呀 |
|
qiezi
2007-04-25
有几个类生成有些问题。。晚上回去处理,有些你不需要使用,所以你只需要测试你要使用的就行了。buildlib目前是给我测试用的,它会导入所有模块,这样可以知道有哪些编译不过。
|
|
qiezi
2007-04-25
samples/xml.d我修改了一下,编译可以通过,不过build有点问题,我是直接使用dmd做的,命令行如下:
E:\dxpcom\samples>dmd -ofe:\xulrunner\xml.exe xml.d -I..\src e:\xulrunner\xpcom.lib ..\src\mozilla\xpcom\nsID.d ..\src\mozill a\xpcom\nsIDOMParser.d ..\src\mozilla\xpcom\nsISupports.d 问题是CreateInstanceByContractID失败,你有时间看看是什么问题,不会是xulrunner里面没这东西吧。。。 |
|
h_rain
2007-04-25
G:\rain\D_XpCOM\samples>bud test.d -PP..\src OPTLINK (R) for Win32 Release 7.50B1 Copyright (C) Digital Mars 1989 - 2001 All Rights Reserved G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_StringContainerInit G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_StringGetData G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_StringContainerFinish G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_CStringContainerInit G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_CStringGetData G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_CStringContainerFinish G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_StringContainerInit2 G:\rain\D_XpCOM\src\mozilla\dxpcom\StringAPI.obj(StringAPI) Error 42: Symbol Undefined _NS_CStringContainerInit2 test.obj(test) Error 42: Symbol Undefined _NS_InitXPCOM2 test.obj(test) Error 42: Symbol Undefined _NS_GetComponentManager test.obj(test) Error 42: Symbol Undefined _NS_ShutdownXPCOM 这个怎么不行? 是我没给xpcom.lib? |
|
qiezi
2007-04-25
这个是要xpcom.lib,用implib导出一个就行了
|
|
qiezi
2007-04-25
成功了,要把生成的文件拷到xulrunner目录下去执行,还真是晕,nsILocalFile就不用拷过去。
要搞清楚xpcom加载的目录亚,怎么去设置它而不用拷过去,不然以后测试很麻烦的。 你可以试试XML解析了,我那个xml.d只写了一点,有时间你把它补充看看吧,先做个遍历。 |
|
qiezi
2007-04-25
终于全部通过了,除了nsIMsgWindowData这个,它和其它任何一个都没有关联,却无法让它通过,还真是郁闷,不管它了。
正在SVN提交,按以前的经验,大概要20分钟以上才能完成。。 我在我的机器上使用build @buildlib成功创建了一个dxpcom.a文件,windows上还没测试。 |
|
qiezi
2007-04-25
windows上也可以build出静态库了,不过build在windows上效率可是真低亚。另外build程序最好使用-op参数,否则在windows上会提示一堆莫名其妙的错误,在linux上则提示找不到.o文件,应该是个BUG。
|
|
h_rain
2007-04-25
xpcom.lib 我在Mozilla上下载的Gecko-SDK,使用里面的Lib文件就不行。能全部通过真是太好了!
我试试弄一个静态库试试。 |
|
qiezi
2007-04-25
gecko-sdk里面的lib是VC生成的COFF格式吧,应该不能直接用,转成 OMF才行,或者是从xpcom.dll导出一个。
|