[Xastir] problems with xastir

Lee Bengston lee.bengston at gmail.com
Thu Dec 20 21:21:38 EST 2012


On Thu, Dec 20, 2012 at 3:19 PM, Tom Russo <russo at bogodyn.org> wrote:
> On Thu, Dec 20, 2012 at 12:52:05PM -0700, we recorded a bogon-computron collision of the <russo at bogodyn.org> flavor, containing:
>> > >
>> > > It *may* be possible to use these newer versions of BDB with Xastir --- if
>> > > so, then all it will take is changing that loop, rebootstrapping, reconfiguring,
>> > > and rebuilding.  But AFAIK nobody has tested it with such a new version.
>> > >
>> > > If you test Xastir and find that map caching works just fine with BDB 5.1,
>> > > then I'll happily modify the acinclude.m4 file in CVS.
>> >
>> > I did get a 'yes' to everything except GDAL at the end of the
>> > configure script (left GDAL out on purpose).  Help about shows
>> > 'map_caching' as one of the libraries used.
>>
>> How odd.   I can't see how Xastir's configure would find that.
>>
>> Look at your config.log --- when it reports that it found a BDB, does it
>> say it is using -ldb5.1 or something like it (search down for where it
>> is probing for berkeley db, and it should say first:
>>
>> checking for a library containing db_create

>From config.log

configure:12049: checking for a library containing db_create
configure:12065: gcc -o conftest -g -O2 -pipe -W -Wall -Wpointer-arith
-Wstrict-prototypes -Wno-unused-parameter -pthread
-I/usr/local/include -I/usr/include/geotiff  -L/usr/local/lib
conftest.c -lrt -lXm -lXt -lXp -lXext -lm   -lSM -lICE -lX11  -lcurl
-lproj -lshp -lpcre -ltiff -lgeotiff -lax25 -ldb-4.9 >&5
conftest.c:170:1: warning: function declaration isn't a prototype
[-Wstrict-prototypes]
/usr/bin/ld: cannot find -ldb-4.9
collect2: error: ld returned 1 exit status
configure:12065: $? = 1
configure: failed program was:
| /* confdefs.h */

>>
>> and much later something like:
>>
>> result: -ldbXXX

The log just shows
configure:12079: result: -ldb

>> The only question in my mind is whether maybe you ALSO have a 4.x version
>> installed and it's finding that.  "Help->About" doesn't actually report the
>> db version it found, only whether it found a usable one (in which case it
>> reports "map_caching" as a "library used" which is misleading).

I searched with synaptic, and I could not find any 4.x versions
available from the repositories - only 5.1 and 5.3.

>
> It gets worse than xastir's configure not just probing for 5.x versions.  The
> map_cache.c code actually will NOT do anything right with version 5.x.
> It contains an ifdef set-up like this:
>
------ snip ----
>
> Thus, if DB_VERSION_MAJOR is less than 4, fail, if equal to 4, then do
> some set-up based on minor version number (because 4.0 and 4.1 had slightly
> different APIs), and if version is greater than 4, do absolutely nothing.
>
> This pattern is followed *EVERYWHERE* that the "open" function of the db
> library is called.  So if you're actually linking db5.1 in, then map caching
> is NOT working, because it is never opening the database.  I can't see what
> the code would actually do --- it looks like when it gets a pointer to
> the database structure it tries to call "get" and "put" on things, and may
> silently pass through and do nothing (not even output) if those fail.  One
> has to turn on debug level 512 to see some output in case that get and put are
> called and fail.
>
> If you have map caching working, then it's because you also have a 4.x
> db installed.  If you're linked against 5.1 (and I can't see how you could be)
> then map caching isn't working.

Currently it's hard to see how I do.  Configure didn't seem to find a
4.x version unless I missed something in the log.  I did have 4.8
installed prior to upgrading from 12.04 to 12.10.

Here's the beginning of the output of sudo ldd /usr/bin/xastir

	linux-gate.so.1 =>  (0xb7786000)
	libXm.so.2 => /usr/lib/libXm.so.2 (0xb762e000)
	libXt.so.6 => /usr/lib/i386-linux-gnu/libXt.so.6 (0xb75d2000)
	libX11.so.6 => /usr/lib/i386-linux-gnu/libX11.so.6 (0xb749b000)
	libGraphicsMagick.so.3 => /usr/lib/libGraphicsMagick.so.3 (0xb7178000)
	libtiff.so.5 => /usr/lib/i386-linux-gnu/libtiff.so.5 (0xb7105000)
	libm.so.6 => /lib/i386-linux-gnu/libm.so.6 (0xb70d9000)
	libpthread.so.0 => /lib/i386-linux-gnu/libpthread.so.0 (0xb70be000)
	libdb-5.1.so => /usr/lib/i386-linux-gnu/libdb-5.1.so (0xb6f36000)
	libcurl.so.4 => /usr/lib/i386-linux-gnu/libcurl.so.4 (0xb6ed3000)
	libshp.so.1 => /usr/lib/i386-linux-gnu/libshp.so.1 (0xb6ec8000)
	libpcre.so.3 => /lib/i386-linux-gnu/libpcre.so.3 (0xb6e88000)
	libgeotiff.so.2 => /usr/lib/libgeotiff.so.2 (0xb6e60000)
	libax25.so.0 => /usr/lib/libax25.so.0 (0xb6e54000)

A reference to libdb5.1 is there, hmm.

Regards,

Lee - K5DAT
Leesburg, VA



More information about the Xastir mailing list