I think most of the compilation related problems with the database package are due to wrapping the C API of each database, which doesn't appear to be very stable for any of the supported databases. In addition to the C API of each db, the package provides a "high-level" API (eg the sql() function) which makes use of a tiny portion of each database's API (also generally the most stable).
Just removing the bindings for each DB's C API will resolve most of these problems. I don't know of anyone using the C API's through octave. I'll have a look at that later/soon (just requires commenting out the %include of dbname_filtered.h file, etc). Xavier On Sun, Jul 5, 2009 at 12:41 PM, Tatsuro MATSUOKA<tmacch...@yahoo.co.jp> wrote: > Hello > > The error may be occurred because the sqlite library you use was not complied > with > #define SQLITE_ENABLE_COLUMN_METADATA > > You may have to build the sqlite library by yourself with addition of #define > SQLITE_ENABLE_COLUMN_METADATA in proper space or ./configure with > CPPFLAGS='-DSQLITE_ENABLE_COLUMN_METADATA' > > If you use source of sqlite-3.6.16, the CPPFLAGS of ./configure should be > CPPFLAGS='-DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_TESTCTRL_ASSERT=1 > -DSQLITE_TESTCTRL_ALWAYS=2' > > For exmaple > $ CPPFLAGS = \ > '-DSQLITE_ENABLE_COLUMN_METADATA -DSQLITE_TESTCTRL_ASSERT=1 > -DSQLITE_TESTCTRL_ALWAYS=2' \ > ./configure > > Regards > > Tasturo > --- Alex Hindle wrote: > >> >> Hi Tatsuro >> >> >> >> Tatsuro MATSUOKA wrote: >> > Please modify line 6768 in src/sqlite3_wrap.cpp >> > >> > From >> > result = (int)sqlite3_auto_extension(arg1); >> > to >> > result = (int)sqlite3_auto_extension((void (*)())arg1); >> > >> Thank you, this fixed that problem. >> >> >> Now I get a new error which seems to be related to the C++ compiler not >> being able to find a procedure: >> >> octave:7> pkg install ../youtube/database-1.0.4 >> sqlite3_wrap.o: In function `_wrap_sqlite3_enable_load_extension': >> /home/userx/CS/youtube/database-1.0.4/src/sqlite3_wrap.cpp:6838: >> undefined reference to `sqlite3_enable_load_extension' >> sqlite3_wrap.o: In function `_wrap_sqlite3_load_extension': >> /home/userx/CS/youtube/database-1.0.4/src/sqlite3_wrap.cpp:6803: >> undefined reference to `sqlite3_load_extension' >> collect2: ld returned 1 exit status >> make: *** [sqlite3.oct] Error 1 >> error: 'make' returned the following error: make: Entering directory >> `/home/userx/CS/youtube/database-1.0.4/src' >> CXXFLAGS="-g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions >> -fstack-protector --param=ssp-buffer-size=4 -fomit-frame-pointer >> -march=i586 -mtune=generic -fasynchronous-unwind-tables" mkoctfile >> -DHAVE_OCTAVE_30 -v -o sqlite3.oct -lsqlite3 sqlite3_wrap.cpp >> g++ -c -O2 -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions >> -fstack-protector --param=ssp-buffer-size=4 -fomit-frame-pointer >> -march=i586 -mtune=generic -fasynchronous-unwind-tables -DH5_USE_16_API >> -fPIC -I/usr/include/octave-3.0.2 -I/usr/include/octave-3.0.2/octave >> -mieee-fp -g -pipe -Wp,-D_FORTIFY_SOURCE=2 -fexceptions >> -fstack-protector --param=ssp-buffer-size=4 -fomit-frame-pointer >> -march=i586 -mtune=generic -fasynchronous-unwind-tables -DHAVE_OCTAVE_30 >> sqlite3_wrap.cpp -o sqlite3_wrap.o >> g++ -shared -Wl,-Bsymbolic -o sqlite3.oct sqlite3_wrap.o -lsqlite3 >> -L/usr/lib/octave-3.0.2 -loctinterp -loctave -lcruft -Wl,--as-needed >> -Wl,--no-undefined -llapack -lblas -lfftw3 -lreadline -lncurses -ldl >> -lhdf5 -lz -lm -L/usr/lib/gcc/i586-manbo-linux-gnu/4.3.1 >> -L/usr/lib/gcc/i586-manbo-linux-gnu/4.3.1/../../.. -lhdf5 -lz >> -lgfortranbegin -lgfortran -lm >> make: Leaving directory `/home/userx/CS/youtube/database-1.0.4/src' >> error: called from `pkg:configure_make' in file >> /usr/share/octave/3.0.2/m/pkg/pkg.m near line 1248, column 2 >> >> >> >> I have installed sqlite3 and its libraries and header files so I don't >> know what the problem is. >> >> >> >> >> > I do not remember in octave 3.0.2 supports that 'pkg install' can also be >> > used untarred >> folder like >> > >> > octave> pkg datadabe-1.0.x >> > >> Yes this works in Octave 3.0.2 >> >> I am trying database-1.0.4 in Octave 3.2 and older database-pkg versions >> in older Octave 3.0.2 now. >> >> >> Regards >> >> Alex >> >> >> >> >> >> >> > > > -------------------------------------- > Power up the Internet with Yahoo! Toolbar. > http://pr.mail.yahoo.co.jp/toolbar/ > > ------------------------------------------------------------------------------ > _______________________________________________ > Octave-dev mailing list > Octave-dev@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/octave-dev > ------------------------------------------------------------------------------ _______________________________________________ Octave-dev mailing list Octave-dev@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/octave-dev