help-octave
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [OctDev] Octave forge database


From: Xavier Delacour
Subject: Re: [OctDev] Octave forge database
Date: Sun, 5 Jul 2009 13:08:07 -0700

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<address@hidden> 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
> address@hidden
> https://lists.sourceforge.net/lists/listinfo/octave-dev
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]