bmpx throws undefined reference to `sqlite3_prepare_v2' during build
I have the following problem: i try to install bmpx-0.40.14. The configure script finished successful. But during the build (make), i get the following problem :
.... l/lib/libofa.so /usr/lib/libexpat.so /usr/local/lib/libfftw3.a -lm -lhal-storage -lhal /usr/local/lib/libdbus-1.so -Wl,--rpath -Wl,/usr/local/lib -Wl,--rpath -Wl,/usr/local/lib bmp2_bin-database.o: In function `Bmp::DB::Database::statement_prepare(sqlite3_stmt**, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, sqlite3*) const': /root/Desktop/bmpx-0.40.11/src/database.cc:520: undefined reference to `sqlite3_prepare_v2' collect2: ld returned 1 exit status make[4]: *** [bmp2-bin] Error 1 make[4]: Leaving directory `/root/Desktop/bmpx-0.40.11/src' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/root/Desktop/bmpx-0.40.11/src' make[2]: *** [all] Error 2 make[2]: Leaving directory `/root/Desktop/bmpx-0.40.11/src' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/Desktop/bmpx-0.40.11' make: *** [all] Error 2 You have mail in /var/spool/mail/root [root@localhost bmpx-0.40.11]# It seems that function Bmp::DB::Database::statement_prepare(sqlite3_stmt**, std::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, sqlite3*) const cannot find sqlite3_prepare_v2 in my sqlite package. However i have: [root@localhost sqlite-3.6.4]# pkg-config --modversion sqlite3 3.6.4. And the new sqlite3_prepare_v2 API was added in release version 3.3.9 http://www.sqlite.org/changes.html If try to install older versions of bmpx-0.32 and 0.36 it build and install without errors. Please write if you have any suggestions. |
... And which "Linux" are you using ? ?
Like 'Redhat EL 5' , Fedora 11 , etc. etc. So please tell, may be we can help you then ... It is a must to inform about OS, every time you ask a question. Or add the OS to your profile > My LQ → Edit Profile. http://www.linuxquestions.org/linux/...Ask_a_Question http://linuxsilo.net/docs/smart-questions_en.html ..... |
I am using Red Hat Enterprise Linux 5.2
|
Generally it seems that bmpx-0.40.14 is picky with versions
of the used libraries. I know for sure that sqlite-3.6.12 will compile on EL 5. http://www.linuxquestions.org/questi...3/?highlight#3 .. But may be also try with e.g. version 3.6.20 ? ..... |
Sorry, but bmpx-0.40.14 may need a much later sqlite :
'bmpx-0.40.14 will compile with sqlite-3.5.9, using this source : 'bmpx_0.40.14.orig.tar.gz', and a patch 'bmpx_0.40.14-1.diff.gz' from http://packages.ubuntu.com/intrepid/bmpx > > Links for bmpx .. I used g++-4.1 to compile bmpx on Ubuntu 8.10 . ( Like the default g++ on Redhat EL 5.x .) → → ↓ Ubuntu 8.10 has all the required libraries ... .. and I got a usable bmpx → /usr/local/bin/beep-media-player-2 , bmp2 , bmp-play-files-2.0 , bmp-play-uris-2.0 ..... sqlite 3.5.9 http://packages.ubuntu.com/intrepid/libsqlite3-0 > > Links for libsqlite3-0 : [sqlite3_3.5.9.orig.tar.gz] , [sqlite3_3.5.9-3.diff.gz] .. Unpack the patch to sqlite3-3.5.9/ cd sqlite3-3.5.9/ && patch -p1 < sqlite3_3.5.9-3.diff The patching will also create some patches in sqlite3-3.5.9/debian/patches/01- 02- 03- 04-.. .. copy the patches to the top directory sqlite3-3.5.9/ and patch with : 'patch -p1 < "01-....".diff', etc. etc. .. And sqlite-3.5.9 will compile OK on Redhat EL 5.x . ..... ..... :) ... Good luck ! ..... |
.. I also found these : sqlite-3.6.17-1.fc12.src.rpm +
sqlite-3.6.12-3.fc11.src.rpm .. example links : http://ftp.us.unixeria.com/fedora/li...1.fc12.src.rpm http://fedora.secsup.org/linux/relea...3.fc11.src.rpm .. which automagically will create sqlite"3" rpm packages for EL 5 : 1) mkdir -p --verbose $HOME/rpms/{BUILD,RPMS,SOURCES,SPECS,SRPMS} 2) mkdir -p --verbose $HOME/rpms/RPMS/{athlon,i386,i486,i586,i686,noarch} 3) echo "%_topdir `echo $HOME/rpms`" > $HOME/.rpmmacros 4) cp sqlite-3.6.12-3.fc11.src.rpm rpms/SOURCES/ 4a) cd rpms/SOURCES/ 4b) rpm2cpio sqlite-3.6.12-3.fc11.src.rpm | cpio -idmv 4c) cp sqlite.spec ../SPECS/ 4d) cd ../SPECS/ 5) rpmbuild -bb sqlite.spec ... and the packages : sqlite-3.6.12-3.i386.rpm + sqlite-devel-3.6.12-3.i386.rpm will be created to rpms/RPMS/<arch> . ..... Alternatively sqlite-3.6.17-1.i386.rpm , sqlite-devel-3.6.17-1.i386.rpm . ..... ..... The reason not to unpack e.g. 'sqlite-3.6.12-3.fc11.src.rpm ' to the target folders using ... rpm -i sqlite-3.6.12-3.fc11.src.rpm ... is an MD5 checksum mismatch somewhere in the package. ..... P.S. : 3.5.9 'src.rpm' : wget http://download.fedora.redhat.com/pu...2.fc10.src.rpm ..... |
All times are GMT -5. The time now is 05:11 AM. |