Firebird is available as a precompiled binary for Linux, but it is compiled using very old software, probably to make sure that it can run in any distribution.
The software is compiled using libstdc++.so.5 while current compilers use libstdc++.so.6.
This is OK for normal use but it causes problems when my program links to the Firebird library. I just compiled a 64 bit version of a program and I had the same problems again. As usual the solution was building Firebird from source. This was not difficult but it took some time to figure out how to proceed, so this time I took notes for the future.
Here are the steps to build Firebird 2.0.x. I did not test other versions, but things should not be very different.
The following packages are required to build the software:
bison
automake1.4
libtool
libncurses5-dev
automake1.4
libtool
libncurses5-dev
After installing the packages open a terminal window, move to the root folder of the downloaded code and enter the following commands:
./autogen.sh
./configure --prefix=/media/disco2/firebird-2.0.6-installed
make
make install
make
make install
The "configure" line is needed only if you want to change the default install path, like in my example.
"make install" is needed to strip the files that otherwise would be very large.