[Debian, Sid] Db3 not found..

Pagina: 1
Acties:

  • saviour
  • Registratie: Juli 2000
  • Niet online
Ik probeer Gnome te installeren, een deel daarvan is Gconf.

Als ik dat wil compileren krijg ik de volgende fout:
checking for xml-config... /usr/local/bin/xml-config
checking for db_env_create in -ldb-3.3... no
checking for db_env_create in -ldb-3.2... no
checking for db_env_create in -ldb-3.1... no
checking for db_env_create in -ldb-3... yes
checking db3/db.h usability... no
checking db3/db.h presence... no
checking for db3/db.h... no
configure: error: db3 library found but db3/db.h not found
Als ik zoek met apt-cache search db3, krijg ik het volgende terug:
Client1:/home/saviour/gnome/GConf-1.0.8# apt-cache search db3
db3-doc - Berkeley v3 Database Documentation [html]
libdb3 - Berkeley v3 Database Libraries [runtime]
libdb3++ - Berkeley v3 Database Libraries for C++ [runtime]
libdb3++-dev - Berkeley v3 Database Libraries for C++ [development]
libdb3-dev - Berkeley v3 Database Libraries [development]
libdb3-tcl - Berkeley v3 Database Libraries for TCL [module]
libdb3-util - Berkeley v3 Database Utilities
python-bsddb3 - Python interface to libdb3
Client1:/home/saviour/gnome/GConf-1.0.8#
Als ik al die pakketjes installeer, kan hij db3 nog steeds niet vinden. Logisch denk ik wat dit zijn libraries voor zover ik begrijp.

Wat moet ik dan wel installeren :?

  • _Squatt_
  • Registratie: Oktober 2000
  • Niet online
Bij mij stond het bestand 'db.h' gewoon in /usr/local/include ipv in /usr/local/include/db3, en in die laatste dir probeert het configure script 'm te vinden.

Even een db3 dir maken en daar in een symlink maken naar db.h

(kan natuurlijk ook /usr/include en /usr/include/db3 zijn in debian, dat weet ik niet precies.)

"He took a duck in the face at two hundred and fifty knots."


  • saviour
  • Registratie: Juli 2000
  • Niet online
_Squatt_, geweldig :D Hartstikke bedankt!

Hoe kom je er eigenlijk achter dat hij in usr/include zoekt? (wat dus bij mij het geval was).

  • _Squatt_
  • Registratie: Oktober 2000
  • Niet online
Header files worden standaard altijd gezocht in /usr/include en /usr/local/include (zo ver ik weet).

In dit geval staat er bijvoorbeeld:
code:
1
#include <db3/db.h>

in de source code, nu wordt dus gezocht naar /usr/include/db3/db.h en naar /usr/include/local/db3/db.h.

In principe kun je ervan uitgaan dat alles wat je met apt-get installeert onder /usr staat, en niet onder /usr/local.

Overigens kun je bij dit soort problemen het beste even config.log bekijken, daar had in dit geval aan het eind iets gestaan als:
code:
1
2
3
4
5
6
configure:10233:Checking for db3/db.h
***** error, failed program was:
#include <db3/db.h> (*)
int main {
    db_create(...)
} etc....

Het gaat om het regeltje met het sterretje, ik weet bijvoorbeeld dat ik db.h heb, en hier zie ik dat het bestand niet gevonden wordt omdat het niet op de plek staat waar configure 't verwacht. Dus kan ik er wat aan doen :).

"He took a duck in the face at two hundred and fifty knots."


  • saviour
  • Registratie: Juli 2000
  • Niet online
Aja, ik begin het een beetje te snappen nu.. Tis wel ff wat anders dan Windows he? :D