On Aug 22, 2011, at 1:49 AM, zzsj <[email protected]> wrote: > hi list: > With more and more components using Spirit as parser generator,
Yes. While it adds compile time, the idea is to have faster runtimes, so I feel like this is a worthwhile tradeoff as long as your machine has a modern spec of > 2 cores and 2 gb memory. With that spec Mapnik, with new spirit goodness should take 6-8 minutes to compile which seems absolutely fine. > the generated code seems to be dramatically bloated. I have not seen this to be the case. > > For my case: > mapnik(trunk) on msvc9/10 generates 800MB pdb file in debug mode and 400MB in > release mode, I have been building osx binaries recently with libmapnik statically compiled against all dependencies (including boost) and that lib totals 8 mb. I'm not familiar with pdb files - they are for debugging? Msvc must keep around much more than is needed? For my development all I tend to need is a release build with the -g flag for gdb, but I like minimal likely more than most. > and compiling takes around 20 minutes with 1GB+ ram. Are you frequently compiling Mapnik? Maybe try clang - is takes 6-8 minutes. > Any project, even just including those headers, could be blotted to 10MB > binary. Can you provide an example? > > Not sure if this is the only case for msvc. It's important we do our best with any compiler. If you could provide some code samples perhaps we could try some flags to hide inlines to reduce sizes. > > I think we should place the "boost/spirit" related stuff more carefully, > avoiding too many includes in one single unit. > > Also as the release note said: Spirit offers > BOOST_SPIRIT_NO_PREDEFINED_TERMINALS to prevent instantiations of predefined > terminal objects which slows down compile time a lot, as a breaking change in > Boost 1.47.0. Cool. I'll take a look at this, thanks. > > regards, zsj > _______________________________________________ > Mapnik-devel mailing list > [email protected] > https://lists.berlios.de/mailman/listinfo/mapnik-devel _______________________________________________ Mapnik-devel mailing list [email protected] https://lists.berlios.de/mailman/listinfo/mapnik-devel
