Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Message-ID: <20050721022752.90634.qmail@web50404.mail.yahoo.com> Date: Wed, 20 Jul 2005 21:27:52 -0500 (CDT) From: Manuel Tejada Subject: Why I can't create a database using Berkeley DB To: cygwin AT cygwin DOT com MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-IsSubscribed: yes Recently I installed Berkeley DB version 4.3. I copied The following example source from a tutorial somewhere which I saved as prueba_berkeley.c: --------------------------------- #include #include #include #define DATABASE "access.db" int main() { DB *dbp; DBT key, data; int ret, t_ret; if ((ret = db_create(&dbp, NULL, 0)) != 0) { fprintf(stderr, "db_create: %s\n", db_strerror(ret)); exit (1); } if ((ret = dbp->open(dbp, NULL, DATABASE, NULL, DB_BTREE, DB_CREATE, 0664)) != 0) { dbp->err(dbp, ret, "%s", DATABASE); goto err; } memset(&key, 0, sizeof(key)); memset(&data, 0, sizeof(data)); key.data = "fruit"; key.size = sizeof("fruit"); data.data = "apple"; data.size = sizeof("apple"); if ((ret = dbp->put(dbp, NULL, &key, &data, 0)) == 0) printf("db: %s: key stored.\n", (char *)key.data); else { dbp->err(dbp, ret, "DB->put"); goto err; } if ((ret = dbp->get(dbp, NULL, &key, &data, 0)) == 0) printf("db: %s: key retrieved: data was %s.\n", (char *)key.data, (char *)data.data); else { dbp->err(dbp, ret, "DB->get"); goto err; } if ((ret = dbp->del(dbp, NULL, &key, 0)) == 0) printf("db: %s: key was deleted.\n", (char *)key.data); else { dbp->err(dbp, ret, "DB->del"); goto err; } if ((ret = dbp->get(dbp, NULL, &key, &data, 0)) == 0) printf("db: %s: key retrieved: data was %s.\n", (char *)key.data, (char *)data.data); else dbp->err(dbp, ret, "DB->get"); err: if ((t_ret = dbp->close(dbp, 0)) != 0 && ret == 0) ret = t_ret; exit(ret); } ---------------------------------- When I tried to compile prueba_berkeley.c I get the following: $ gcc -o prueba_berkeley prueba_berkeley.c /cygdrive/c/WINDOWS/TEMP/ccRirmsy.o:prueba_berkeley.c:(.text+0x45): undefined reference to `_db_create' /cygdrive/c/WINDOWS/TEMP/ccRirmsy.o:prueba_berkeley.c:(.text+0x59): undefined reference to `_db_strerror' collect2: ld returned 1 exit status As you see, it tells the db_create() anf db_strerror() are not defined. Somebody can tell me how to define them? I will appreciate any help. Manuel TEJADA M. ___________________________________________________________ Do You Yahoo!? La mejor conexión a Internet y 2GB extra a tu correo por $100 al mes. http://net.yahoo.com.mx -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/