[redland-dev] Macosx build problem

Dave Beckett dave.beckett at bristol.ac.uk
Sat Nov 20 09:28:01 GMT 2004


On Fri, 19 Nov 2004 15:06:13 -0500
Luc Bélanger <lucbelanger at gmail.com> wrote:

> Hi all,
> 
> I tried very hard to build redland on mac os X v.10.3.6, but I always 
> end with "undeclared" errors.
> 
> First, the necessary packages are installed in /opt/local (db4 
> [berkeley db] ,libwww,libxml2 and zlib)
> 
> Here is what I've done to configure a "real" clean build
> 
> [belanglu:~/src] belanglu% export DYLD_LIBRARY_PATH=/opt/local/lib
> [belanglu:~/src] belanglu% tar -zxf redland-0.9.19.tar.gz
> [belanglu:~/src] belanglu% cd redland-0.9.19
> [belanglu:~/src/redland-0.9.19] belanglu% ./configure --with-mysql 
> --with-bdb=/opt/local --with-openssl-digests

Seems ok.


> and it ends up with the following summaries
> 
> Raptor build summary:
>    RDF parsers available : rdfxml ntriples turtle rss-tag-soup
>    RDF parsers enabled   : rdfxml ntriples turtle rss-tag-soup
>    XML parser            : libxml(system 2.6.13)
>    WWW library           : libxml(system 2.6.13)
> 
> Rasqal build summary:
>    RDF query languages available : rdql sparql
>    RDF query languages enabled   : rdql sparql
>    Triples source                : raptor internal
> 
> Redland build summary:
>    Berkeley/Sleepycat DB:  Version unknown (library db-4.2 in 
> /opt/local/lib)

This is suspicious and tells me that configure found the library -
libdb4.2* in the directory, but couldn't find the right values in the
correct header file - hence the 'unknown'.   Thus it's likely
configure's guessing picked the wrong combination of library and
header file.   It's as good as it gets since Sleepycat don't
ship with industry-standard foo-config or pkg-config support.


>    Triple stores:          memory mysql(4.1.7) hashes(memory)
>    hashes(bdb 
> unknown)
>    RDF parsers:            raptor(internal)
>    RDF query:              rasqal(internal)
>    Content digests:        md5(openssl) sha1(openssl)
>    ripemd160(openssl)
> 
> Then I do
> 
> [belanglu:~/src/redland-0.9.19] belanglu% make
> 
> And it all goes well (without warning) until
> 
>   gcc -DHAVE_CONFIG_H -I. -I. -I. -I/opt/local/include 
> -I/usr/local/mysql/include -fno-omit-frame-pointer -I../rasqal 
> -I../raptor -I/opt/local/include -I/usr/local/mysql/include 
> -fno-omit-frame-pointer -DLIBRDF_INTERNAL=1 -g -O2
> -I/opt/local/include -I/usr/local/mysql/include
> -fno-omit-frame-pointer -I../rasqal -I../raptor -I/opt/local/include
> -I/usr/local/mysql/include -fno-omit-frame-pointer -DLIBRDF_INTERNAL=1
> -g -O2 -MT rdf_hash_bdb.lo -MD -MP -MF .deps/rdf_hash_bdb.Tpo -c
> rdf_hash_bdb.c  -fno-common -DPIC -o .libs/rdf_hash_bdb.o
> rdf_hash_bdb.c: In function `librdf_hash_bdb_open':
> rdf_hash_bdb.c:186: error: `DB_CREATE' undeclared (first use in this 
> function)
> rdf_hash_bdb.c:186: error: (Each undeclared identifier is reported
> only once
> rdf_hash_bdb.c:186: error: for each function it appears in.)
> rdf_hash_bdb.c:186: error: `DB_RDONLY' undeclared (first use in this 
> function)
> rdf_hash_bdb.c:188: error: `DB_TRUNCATE' undeclared (first use in this
> 
> function)
> rdf_hash_bdb.c:244: error: `O_RDWR' undeclared (first use in this 
> function)
> rdf_hash_bdb.c:244: error: `O_CREAT' undeclared (first use in this 
> function)
> rdf_hash_bdb.c:246: error: `O_RDONLY' undeclared (first use in this 
> function)
> rdf_hash_bdb.c:246: error: parse error before "flags"
> rdf_hash_bdb.c: In function `librdf_hash_bdb_exists':
> rdf_hash_bdb.c:805: error: `bdb' undeclared (first use in this
> function) rdf_hash_bdb.c:822: error: `dbc' undeclared (first use in
> this function) make[2]: *** [rdf_hash_bdb.lo] Error 1
> make[1]: *** [all] Error 2
> make: *** [all-recursive] Error 1

Yeah, so it thought that it had the (V3, V4) db_create command
however the db.h header file it's bringing in, does not define
DB_CREATE.  Suggesting it's a V2 or V1 db.h header.  Maybe in
/usr/include or other default include path?

Can you email me/the list, the full output of the configure command 
as well as the output of:
  $ grep BDB librdf/rdf_config.h

Thanks

Dave



More information about the redland-dev mailing list