[maemo-users] Need Some Basic Help

From: David Greaves david at dgreaves.com
Date: Thu Jul 17 19:32:47 EEST 2008
Dr. Nicholas Shaw wrote:
> I have a program (C++) that uses SQLite3 (3.5.9) as the backend DB.  I
> decided to move this from SUSE 10.3 where it compiles/runs without any issue
> to my Nokia N800 and N810 (should arrive today).  To do that I installed a
> VMware guest running Debian 4R3 (latest release) and installed g++.  I then
> copied the files (database (fuel.db), source code, header file (for sqlite),
> and make) to the new system and compiled it.  If this worked then I was
> going to download/install the SDK and test it there.  It compiled without
> issue but when I attempted to run it - error.
> The error I'm getting is: "error while loading shared libraries:
> libsqlite3.so.0: cannot open shared object file: No such file or directory."
> The file is located in /usr/local/lib.

I assume you mean libsqlite3.so.0 is located in /usr/local/lib because you
copied it there (is it an ARM version?)

This is a runtime issue.

Two fixes:
1. Preferred. Install sqlite properly: apt-get install libsqlite0

2. OK, you're not going to do that: so dynamic library loading is controlled by
/etc/ld.so.conf config file
Add /usr/local/lib to the config file and re-run (as root) ldconfig

Then when your app runs it'll find the dynamically loaded library.

> The make is a simple script: "g++ -O -ogas -L/usr/libs -L/usr/local/lib
> -I/usr/libs -lsqlite3 gas.cpp
> I added the /usr/local/lib to correct the problem but without success.  I
> also tried adding -I/usr/local/lib without success.
Your compile is fine.


More information about the maemo-users mailing list