[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