Phobos and Tango deep dependancies

DavidL Davidl at 126.com
Tue Oct 2 06:09:35 PDT 2007


在 Tue, 02 Oct 2007 17:50:20 +0800,Gilles G. <schaouette at free.fr> 写道:

> I tried to compile a simple hello, world with visual studio 2005 express  
> and there are only 4 DLL dependancies...
>
> The program for tango is:
>
> import tango.io.Stdout;
>
> int main()
> {
>     Stdout("Hello, world!").newline;
>     return 0;
> }
>
> And the dependancies are listed below:
>  * 10 Always loaded DLLs:
> MPR.DLL, ADVAPI32.DLL, GDI32.DLL, KERNEL32.DLL, MSVCRT.DLL, NTDLL.DLL,  
> RPCRT4.DLL, SHELL32.DLL, SHLWAPI.DLL, USER32.DLL
>
>  * 108 Delay loaded DLLs:
> ACTIVEDS.DLL, ADSLDPC.DLL, ADVPACK.DLL, APPHELP.DLL, ATL.DLL, AUTHZ.DLL,  
> BROWSEUI.DLL, CABINET.DLL, CDFVIEW.DLL, CERTCLI.DLL, CFGMGR32.DLL,  
> CLUSAPI.DLL, COMCTL32.DLL, COMDLG32.DLL, CREDUI.DLL, CRYPT32.DLL,  
> CRYPTUI.DLL, CSCDLL.DLL, DBGHELP.DLL, DEVMGR.DLL, DHCPCSVC.DLL,  
> DNSAPI.DLL, DUSER.DLL, EFSADU.DLL, ESENT.DLL, GDIPLUS.DLL,  
> HLINK.DLL,HNETCFG.DLL ,IMAGEHLP.DLL, IMGUTIL.DLL, IMM32.DLL,  
> INETCOMM.DLL, IPHLPAPI.DLL,
>  LINKINFO.DLL,LZ32.DLL ,MFC42U.DLL ,MLANG.DLL , MOBSYNC.DLL, MPRAPI.DLL,  
> MPRUI.DLL, MSASN1.DLL, MSGINA.DLL, MSHTML.DLL, MSI.DLL, MSIMG32.DLL,  
> MSJAVA.DLL, MSLS31.DLL, MSOERT2.DLL, MSRATING.DLL, MSSIGN32.DLL,  
> MSVCP60.DLL, MSWSOCK.DLL, NETAPI32.DLL, NETCFGX.DLL, NETMAN.DLL,  
> NETPLWIZ.DLL,
>  NETRAP.DLL, NETSHELL.DLL, NETUI0.DLL, NETUI1.DLL, NETUI2.DLL,  
> NTDSAPI.DLL, NTLANMAN.DLL, ODBC32.DLL, OLE32.DLL, OLEACC.DLL,  
> OLEAUT32.DLL,  OLEDLG.DLL, OLEPRO32.DLL, POWRPROF.DLL, PRINTUI.DLL,  
> PSAPI.DLL, QUERY.DLL, RASAPI32.DLL, RASDLG.DLL, RASMAN.DLL, REGAPI.DLL,  
> RTUTILS.DLL,  SAMLIB.DLL, SCECLI.DLL, SECUR32.DLL, SETUPAPI.DLL,  
> SHDOCVW.DLL, SHSVCS.DLL, TAPI32.DLL, URLMON.DLL, USERENV.DLL, USP10.DLL,  
> UTILDLL.DLL, UXTHEME.DLL, VERSION.DLL, W32TOPL.DLL, WINHTTP.DLL,  
> WININET.DLL, WINMM.DLL, WINSCARD.DLL, WINSPOOL.DRV, WINSTA.DLL,  
> WINTRUST.DLL, LDAP32.DLL, WMI.DLL, WS2_32.DLL, WS2HELP.DLL, WSOCK32.DLL,  
> WTSAPI32.DLL, WZCDLG.DLL, WZCSAPI.DLL, WZCSVC.DLL
>
>
> This may be compared to phobos : 5 always loaded DLLs and 112 delay  
> loaded DLLs.
>
> --
> Gilles
>
> Lars Ivar Igesund Wrote:
>
>> Gilles G. wrote:
>>
>> > Hello all,
>> > I noticed that using the phobos library on windows make the  
>> executables
>> > depend on a huge list of delay loaded DLLs and also 5 "always loaded"  
>> DLLs
>> > (the list is below). I also tried the Tango library and the situation
>> > seems to be even worse...
>>
>> I am no Windows guru, but aren't all those system DLL's? You will be  
>> hard
>> pushed to avoid those when using the console. As for Tango, could you
>> please post a list and the relevant program? Feel free to use the Tango
>> forums, or create a ticket if it seems to be bug in Tango. Using the  
>> same
>> compiler, Tango shouldn't have more dependencies than Phobos for the  
>> same
>> functionality.
>>
>> --
>> Lars Ivar Igesund
>> blog at http://larsivi.net
>> DSource, #d.tango & #D: larsivi
>> Dancing the Tango
>

If those DLLs exist, then no problem at all. You gain nothing negative.
To kill those dependencies of DLLs would be troublesome AFAIC.


-- 
使用 Opera 革命性的电子邮件客户程序: http://www.opera.com/mail/



More information about the Digitalmars-d mailing list