#82 Compile problem (0.6pre1)

open
nobody
5
2005-04-30
2005-04-30
No

[1] ./configure works fine, however make complains that
"yacc" is missing. Installed package "bison".

[2] make complains that 'flex' is missing. Installed
package 'flex'.

[3] make exits with error 1. The tail follows.

/bin/sh ../../libtool --mode=link gcc -g -O2 -DSQL
-o mdb-sql mdb-sql.o ../libmdb/libmdb.la
../sql/libmdbsql.la -L/opt/gnome/lib -lglib-2.0 -lfl
gcc -g -O2 -DSQL -o .libs/mdb-sql mdb-sql.o
../libmdb/.libs/libmdb -L/opt/gnome/lib -lm
../sql/.libs/libmdbsql /opt/gnome/lib/libglib-2.0.so -lfl
mdb-sql.o(.text+0xb37): In function `main':
/tmp/PACKAGES/mdbtools-0.6pre1/mdbtools-0.6pre1/src/util/mdb-sql.c:364:
undefined reference to `read_history'
mdb-sql.o(.text+0x10a2):/tmp/PACKAGES/mdbtools-0.6pre1/mdbtools-0.6pre1/src/util/mdb-sql.c:483:
undefined reference to `write_history'
../sql/.libs/libmdbsql: undefined reference to `yylex'
../sql/.libs/libmdbsql: undefined reference to `yyerror'
collect2: ld returned 1 exit status
make[2]: *** [mdb-sql] Error 1
make[2]: Leaving directory
`/tmp/PACKAGES/mdbtools-0.6pre1/mdbtools-0.6pre1/src/util'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory
`/tmp/PACKAGES/mdbtools-0.6pre1/mdbtools-0.6pre1/src'
make: *** [all-recursive] Error 1

Discussion

  • Old Curmudgeon

    Old Curmudgeon - 2006-02-01

    Logged In: YES
    user_id=1441453

    The problem is that you don't have the source for the
    package "readline" installed. mdb-sql.c includes
    readline/readline.h conditionally, but calls read_history
    and write_history no matter what. If you add the source for
    readline and set the GCC_INCLUDE_DIRS variable to point to
    the directory in which it is installed, this clears the
    read_history and write_history.

    I don't know how to fix the yylex and yyerror problems yet
    as I'm having the same problem, but these are yacc variables
    so it must be something with either the yacc install or with
    some yacc file that isn't properly compiled. Meanwhile,
    however, if you want to use the tools that come before
    mdb-sql, you are fine (you just can't install them using
    make, you have to use the full path name into the
    executables which are located in src/util).

     
  • Old Curmudgeon

    Old Curmudgeon - 2006-02-01

    Logged In: YES
    user_id=1441453

    The problem is that you don't have the source for the
    package "readline" installed. mdb-sql.c includes
    readline/readline.h conditionally, but calls read_history
    and write_history no matter what. If you add the source for
    readline and set the GCC_INCLUDE_DIRS variable to point to
    the directory in which it is installed, this clears the
    read_history and write_history.

    I don't know how to fix the yylex and yyerror problems yet
    as I'm having the same problem, but these are yacc variables
    so it must be something with either the yacc install or with
    some yacc file that isn't properly compiled. Meanwhile,
    however, if you want to use the tools that come before
    mdb-sql, you are fine (you just can't install them using
    make, you have to use the full path name into the
    executables which are located in src/util).

     
  • Anonymous - 2007-01-12

    Logged In: YES
    user_id=23461
    Originator: NO

    I'm facing the same problems. Thanks to your post I solved the readline problem, but I got the same bison errors.

    According to the bison documentation, the yylex and yyerror functions are to be supplied by the application source to the bison parser. I'm still looking in the source of the SQL tool where that should be.

     

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.





No, thanks