Re: sqlite users?

new topic     » goto parent     » topic index » view thread      » older message » newer message

ChrisBurch3 wrote:
> 
> Hi
> 
> Is any body out there using sqlite3?
> 
> If so, have you tried downloading the latest library (3.4.2). I believe it may
> be broken when being used with euphoria on Linux.

<snip>
 
> However, I believe this brings up an important point. This is one of euphorias
> greatest stumbling points - its inability to interface with certain external
> libraries.
> 
> Why do I have to jump through hoops to try to get a fairly simple lib like
> sqlite working? Sometimes it seems like pot luck trying to get a library
> working, that clearly works with compiled c programs.

It depends on what was changed.  It's not clear to me exactly what you 
tried.  Did you try building (or downloaded?) something that used
v3.4.2?  There could be some changes to the underlying libraries, some of
which could be incompatible with what Euphoria uses (i.e., libc).

> Why is there so little feedback from the routines that call external
> libraries?
> 
> Why is it so complex to interface with C++ dlls?

C++ is difficult, unless you're writing C++ and using the same compiler.
And compiler version is important, because the ABI often changes.  There
are also issues about which allocator is used to construct and destroy 
objects.  

In short, if you're dealing with C++, my advice would be to write your 
own thin wrapper around the C++ and expose a C interface that accepts 
euphorian data types.  This is what I've done with wxEuphoria, and I 
can't tell you how many headaches it has prevented.  It's also really
sped up development.

> Why does eu differentiate between calling conventions (the '+'), and rely
> on the user to define them - could eu not detect, and modify internally its
> calling conventions.

On Linux, it's automatically cdecl.  There's no way to automatically detect
the calling convention on windows.

> Why can't eu itemise the symbol table in .dlls / .so s, so that they would
> become
> 
> immediately useable?
> 
> I realise these are highly simplistic, and possible some unrealistic musings
> but I firmly believe that this is where language development should be
> concentrated. Perhaps creating structure types is a first step on easier
> library accessibility.

I think that if we had real OOP structures (as I've semi-proposed here
lately) it would be fairly straightforward to write code to automate
structures and other memory structures.
 
> I'm quite frustrated by this. As far as sqlite goes, if they have changed some
> compilation method, then in order to allow eusqlite3.ew to run with future
> versions, it may either need a rewrite, or stagnate at 3.3.6. And that rewrite
> only becomes possible if a NULL isn't returned trying to open the library.

Have you tried building it (SQLLite) yourself?  Again, since you're on 
a 64 bit native system, this may complicate things, as you may need to 
force 32-bit to work with eu.

Matt

new topic     » goto parent     » topic index » view thread      » older message » newer message

Search



Quick Links

User menu

Not signed in.

Misc Menu