Re: [xml] libXML2



On Mon, Sep 19, 2005 at 04:30:05AM -0400, Daniel Veillard wrote:
On Sun, Sep 18, 2005 at 10:42:27PM -0500, Deepak Venkataraman wrote:
What is the size of the libXML2 source code and what is the size of the 
binary for Linux and Windows?

  Fetch it and check !
    ftp://xmlsoft.org/
Why ask when you can very easilly get the answer by yourself ?

  For the source you have it, check with your own metric, there is
plenty of ways to estimate source size (raw size, line of code, number
of lines, etc ...), you use windows I don't so check there, on linux
it depends what you are looking into and how you compile it:
paphio:~/W3C/WWW -> size -t /usr/lib/libxml2.a
   text    data     bss     dec     hex filename
    661       0       0     661     295 SAX.o (ex /usr/lib/libxml2.a)
   5299     456       0    5755    167b entities.o (ex /usr/lib/libxml2.a)
  11699       4      32   11735    2dd7 encoding.o (ex /usr/lib/libxml2.a)
   6814       0       4    6818    1aa2 error.o (ex /usr/lib/libxml2.a)
  11563       0       4   11567    2d2f parserInternals.o (ex /usr/lib/libxml2.a)
  96331      12       8   96351   1785f parser.o (ex /usr/lib/libxml2.a)
  44258       4       8   44270    acee tree.o (ex /usr/lib/libxml2.a)
   5742       0       0    5742    166e hash.o (ex /usr/lib/libxml2.a)
   2517       0       0    2517     9d5 list.o (ex /usr/lib/libxml2.a)
  16604     260     528   17392    43f0 xmlIO.o (ex /usr/lib/libxml2.a)
   3253       0      32    3285     cd5 xmlmemory.o (ex /usr/lib/libxml2.a)
  16546       0       0   16546    40a2 uri.o (ex /usr/lib/libxml2.a)
  43583       0       0   43583    aa3f valid.o (ex /usr/lib/libxml2.a)
    630       0       8     638     27e xlink.o (ex /usr/lib/libxml2.a)
  55759    7376     432   63567    f84f HTMLparser.o (ex /usr/lib/libxml2.a)
   6170      56       0    6226    1852 HTMLtree.o (ex /usr/lib/libxml2.a)
  26698       0       0   26698    684a debugXML.o (ex /usr/lib/libxml2.a)
  73627     320      48   73995   1210b xpath.o (ex /usr/lib/libxml2.a)
  13219       0       0   13219    33a3 xpointer.o (ex /usr/lib/libxml2.a)
  13596       0       0   13596    351c xinclude.o (ex /usr/lib/libxml2.a)
   9474       4      12    9490    2512 nanohttp.o (ex /usr/lib/libxml2.a)
  12512       0      24   12536    30f8 nanoftp.o (ex /usr/lib/libxml2.a)
   1593       0      40    1633     661 DOCBparser.o (ex /usr/lib/libxml2.a)
  22858       8    2060   24926    615e catalog.o (ex /usr/lib/libxml2.a)
   3216     448     112    3776     ec0 globals.o (ex /usr/lib/libxml2.a)
   1223       4      16    1243     4db threads.o (ex /usr/lib/libxml2.a)
   9755       0      60    9815    2657 c14n.o (ex /usr/lib/libxml2.a)
   3927       0       0    3927     f57 xmlstring.o (ex /usr/lib/libxml2.a)
  43728      64       0   43792    ab10 xmlregexp.o (ex /usr/lib/libxml2.a)
 158441      28       0  158469   26b05 xmlschemas.o (ex /usr/lib/libxml2.a)
  37752       0     192   37944    9438 xmlschemastypes.o (ex /usr/lib/libxml2.a)
   8276   13216       0   21492    53f4 xmlunicode.o (ex /usr/lib/libxml2.a)
  24158       0       0   24158    5e5e xmlreader.o (ex /usr/lib/libxml2.a)
  67863       8       8   67879   10927 relaxng.o (ex /usr/lib/libxml2.a)
   4073       0       8    4081     ff1 dict.o (ex /usr/lib/libxml2.a)
  16791       4       0   16795    419b SAX2.o (ex /usr/lib/libxml2.a)
  20593      80       0   20673    50c1 xmlwriter.o (ex /usr/lib/libxml2.a)
  10396     172      52   10620    297c legacy.o (ex /usr/lib/libxml2.a)
    857    1728       0    2585     a19 chvalid.o (ex /usr/lib/libxml2.a)
  10309       0       0   10309    2845 pattern.o (ex /usr/lib/libxml2.a)
  14859       0       0   14859    3a0b xmlsave.o (ex /usr/lib/libxml2.a)
   1267       0       0    1267     4f3 xmlmodule.o (ex /usr/lib/libxml2.a)
   9718       8       0    9726    25fe schematron.o (ex /usr/lib/libxml2.a)
 948208   24260    3688  976156   ee51c (TOTALS)
paphio:~/W3C/WWW ->

  That's for the static library with everything compiled in. The PIC code
used for shared libraries is larger (one less register, more complex calling
conventions). If you're worried by the size most of it can be compiled
out and the library shrinks to around 200KB (but you have only simple XML
parsing left). The memory code used at run-time also completely depends on 
your working set and what you're doing with it, linux uses demand paging
so you may use as less as 50K in practice.

  So in general your question is way too unprecise to have a canonical answer
(or were your looking at the size of the installed package with or without
the devel there is also the python bindings), and I still think you're best
to check out by yourself based on the metric you think is important.

Daniel

-- 
Daniel Veillard      | Red Hat Desktop team http://redhat.com/
veillard redhat com  | libxml GNOME XML XSLT toolkit  http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]