Subject Re: isc_event_block_a() not exported on linux
Author woodsmailbox
--- In firebird-support@yahoogroups.com, Dimitry Sibiryakov <sd@...> wrote:
>
> > Tried that but it segfaults. Even if I make it work, it's only for x86 so I'd still need a proper solution in the long run.
>
> You did something wrong. I guess - you didn't indicate cdecl calling
> convention. BTW, AFAIK it is not architecture-specific.
>
> SY, SD.
>

Also tried with cdecl of no avail. Calling conventions are highly architecture specific in their implementation, but it's hidden from C, where the compiler takes care of it. See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26744 and http://gcc.gnu.org/ml/gcc-patches/2005-05/msg00290.html.

My best try right now is to implement isc_event_block() again in my own code. Lucky gds__malloc() _was_ exported :) This horrible hack is the last one I'll try before calling quits.

PS: Firebird is in dire need of a C wrapper over its archaic API (something like IBPP but for plain C and firebird-only). Browsing through the python's and php's bindings I can see why they are hard to maintain and not full coverage.

Also I'm wondering why the decision to reimplement KinderbaseDB over the wire and skip fbclient? Is this python specific or fbclient specific?

Sorry for diverging into three threads from a simple question :)