On 06/17/2016 04:12 PM, Fulvio Senore wrote:
> I have developed a couple of open source programs that use Firebird as
> an embedded database. The programs are some years old so they use
> version 2.1.
>
> I am using an embedded setup under Linux with a copy of Firebird that I
> compiled at the time and everything worked fine until now. I compiled in
> an old distribution and I created an archive file that contained
> everything is needed to run the programs: in this way I have been able
> to have a single file that worked on every distribution. I do not have
> the resources to build custom versions for different distributions.
>
> Now some users are reporting that the program does not run under newer
> distributions because those distros ship with libncurses 6 and firebird
> has been built against version 5.
> The problem can be solved by installing the libncurses 5 package but it
> looks like this package is not available under Arch, for example.
> Moreover not all users are experienced enough to install that package.
>
> Of course I might build Firebird in a distribution using libncurses 6
> but this would require doubling the effort and users ought to know which
> version to download.
>
> I think that a solution might be to statically link libncurses with
> Firebird but I don't know if it would work.
> I checked and the following files link to libncurses:
>
> libfbembed.so
> intl/fbintl
> bin/fb_lock_mgr

Not sure for 2.1 build process (unsupported version, sorry) but the only 
binary that actually needs curses is isql for readline's command line 
editor.

> do you know if it is safe to statically link libncurses?

as far as I know yes

> My Linux knowledge is rather limited: if statically linking is safe do
> you have suggestions on how to do it? Should I change something in the
> makefiles

yes
replace -lncurses with /usr/lib/libncurses.a (or how is it called on 
your box)

> or should I use some ambient variable or should I do something
> else?
>


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity planning
reports. http://sdm.link/zohomanageengine
Firebird-Devel mailing list, web interface at 
https://lists.sourceforge.net/lists/listinfo/firebird-devel

Reply via email to