Subject | Re: [firebird-support] 32 or 64-bit client |
---|---|
Author | Helen Borrie |
Post date | 2014-02-28T00:44:36Z |
At 07:39 a.m. 28/02/2014, Freddy Holst Christensen wrote:
But think in terms of the client library being part of the *client application*. So, on the *client machine* you will need the 64-bit client available to the application, if it is compiled as 64-bit.
On the server, if you are running a 64-bit application, then you will need the 64-bit client available *to that application*. Likewise, if you have a 32-bit application (on the server or on a client machine) then you will need to make the 32-bit client available *to that application*.
Note that a 64-bit client can interface with either a 32-bit or a 64-bit server. So, too, a 32-bit client can interface with either server type.
On Windows, don't install the client library in the system folder(s) - even though the installer gives you that option. On either the host machine or client machines, locate a copy of the client library in the same directory as the application executable. (On POSIX, you can use symbolic links.)
As for "how to tell", it's clear that you found out. :-( Your 64-bit application has found a copy of a 32-bit client somewhere - showing that you can't leave it to good luck. Note that your standard Windows 64-bit installation has copies of both the 64-bit and 32-bit clients. The 64-bit is in the \bin subdir (along with all the 64-bit Fb utility programs) while the 32-bit is in \wow64.
Helen Borrie, Support Consultant, IBPhoenix (Pacific)
Author of "The Firebird Book" and "The Firebird Book Second Edition"
http://www.firebird-books.net
__________________________________________________________________
>HEYWell, you don't give much detail...
>
>How do I ind out, whether I'm using 32-bit or 64-bit client library?
>
>On the computer, Firebird 2.5 64.bit should be installed.
>But when I try, to run a 64-bit program it crash, with Access Violation
But think in terms of the client library being part of the *client application*. So, on the *client machine* you will need the 64-bit client available to the application, if it is compiled as 64-bit.
On the server, if you are running a 64-bit application, then you will need the 64-bit client available *to that application*. Likewise, if you have a 32-bit application (on the server or on a client machine) then you will need to make the 32-bit client available *to that application*.
Note that a 64-bit client can interface with either a 32-bit or a 64-bit server. So, too, a 32-bit client can interface with either server type.
On Windows, don't install the client library in the system folder(s) - even though the installer gives you that option. On either the host machine or client machines, locate a copy of the client library in the same directory as the application executable. (On POSIX, you can use symbolic links.)
As for "how to tell", it's clear that you found out. :-( Your 64-bit application has found a copy of a 32-bit client somewhere - showing that you can't leave it to good luck. Note that your standard Windows 64-bit installation has copies of both the 64-bit and 32-bit clients. The 64-bit is in the \bin subdir (along with all the 64-bit Fb utility programs) while the 32-bit is in \wow64.
Helen Borrie, Support Consultant, IBPhoenix (Pacific)
Author of "The Firebird Book" and "The Firebird Book Second Edition"
http://www.firebird-books.net
__________________________________________________________________