All;

When you compile the amalgamation with your source code, doesn't the
compiler reject/not include/remove/doesn't consider the code that could
have been generated from the actual final build?  In other words, if you
just have one function being used out of 10,000 functions, the final binary
would only include the code for that single function and not the 10,000?

OP;

The big question is how much time you want to invest to meet your standards.

Seeing that this is a Windows application, not something for a handheld
with limited resources, if the above is true, and you "pride" yourself on
making your binaries as small as possible, personally, I'd think the
40-80-160 hours investment time to figure out how to get rid of the pure
"bloat" the DLL gives a plausible exercise into investigating this, even if
its on the side.

On top of that, I'm the kind of developer who, if I have to require
assistance from an external source, I'll leave it external from my main
binary, that way if something does change, like FF in your case, then my
application just needs to update a single file, not the entire application.

As much as I can appreciate that your program is under 400k (Which I remind
you is still smaller than the capacity of a 5 1/4 inch floppy disk, single
sided), no user on the planet is going to be concerned that your
application "blew up" to 900kb (Which now fits on a double sided 5 1/4 inch
floppy).  I don't like bloat as much as the next guy, but when you're
talking applications the size of a meg, on what seems to be a windows
platform, NO ONE is going to notice a performance hit between a 400kb
application and a 900kb application. Not to mention bloatware, to me, is
more about how fast the system responds.  If it takes more than 15 seconds
to show your initial UI, or you see elements of your UI just "showing up"
randomly, that would be bloat, even if its a 1 meg file.  If your
application is in line with a "hello world" app, is gigabytes in size, but
everything seems to respond nice and quickly, excellent application, not
bloat, well worth the download/install time, as an end-user view.

Bottom line, how important is [staying close to 400kb and removing external
dependencies] vs [having two physical files, in which, one can be updated
on the fly (Pending no application use)]?  In your testing, if the new DLL
breaks, simply fix, and push out a new version.  Otherwise, just have your
app download the DLL from you or the machine hosting SQLite.

The other thing I just thought of, the fact that this library is available
AT ALL for better-than-free makes me jump for joy and hit my head on the
ceiling.  Its a little black box that "works".  That 500kb DLL is something
I didn't have to write, something that I can review and update if I want.
Its something I didn't have to invent, can easily plug into new
applications I write, small footprint, etc, etc.  Personally, could be
10meg in size, and I'd STILL use it.


On Tue, Jun 26, 2012 at 5:39 PM, E. Timothy Uy <t...@loqu8.com> wrote:

> " 40-80 hours digging deep into how System.Data.SQLite.dll is built "
>
> Lol, I actually did this.
>
> On Tue, Jun 26, 2012 at 11:00 AM, Andrew Rondeau
> <andrew.rond...@gmail.com>wrote:
>
> > The answer of "just add sqlite.c to your project" is great when you're
> > making something in C. The entire world does not use C, nor is C (or
> > C++) always the best option for a particular project.
> >
> > Timothy Uy's offer actually makes a lot of sense if you're using
> > something other then C or C++.
> >
> > For example, I just can't ship a .Net .exe that uses x-copy
> > deployment, and runs on Linux/Mac (via Mono) unless I invest about
> > 40-80 hours digging deep into how System.Data.SQLite.dll is built.
> >
> > On Tue, Jun 26, 2012 at 9:10 AM, Simon Slavin <slav...@bigfraud.org>
> > wrote:
> > >
> > > On 26 Jun 2012, at 4:55pm, bi...@aol.com wrote:
> > >
> > >> Thank you everyone who took the time to comment on my Windows DLL
> >  question.
> > >> I'm also glad I'm not the only one who sees the problem with not
>  having
> > >> the version in the resource block. This really would have helped when
> >  Chrome
> > >> and Firefox updated to a new version of SQLite and all my code stopped
> > >> working.
> > >
> > > This is the reason you will see so many posts here telling you to build
> > SQLite into your application instead of using a DLL.  Then you are not
> > subject to the choices of any other person with code on your users'
> > computers.  SQLite purposely issued a compact and simple amalgamation
> > version of the source code especially to make this fast and simple.
> > >
> > > Simon.
> > > _______________________________________________
> > > sqlite-users mailing list
> > > sqlite-users@sqlite.org
> > > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> > _______________________________________________
> > sqlite-users mailing list
> > sqlite-users@sqlite.org
> > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
> >
> _______________________________________________
> sqlite-users mailing list
> sqlite-users@sqlite.org
> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
>
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to