When trying to link some code I'm writing against libsqlite3-0 3.5.8-2,
I get the following error messages from the linker:
=====
/usr/lib/libsqlite3.so.0: undefined reference to `dlsym'
/usr/lib/libsqlite3.so.0: undefined reference to `dlerror'
/usr/lib/libsqlite3.so.0: undefined reference to `dlopen'
/usr/lib/libsqlite3.so.0: undefined reference to `dlclose'
=====
The same code properly compiles and links against libsqlite3-0 3.5.8-1
and earlier versions of the package under Debian.
-- System Information:
Debian Release: lenny/sid
APT prefers unstable
APT policy: (990, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.23.13-amd64 (SMP w/2 CPU cores; PREEMPT)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages libsqlite3-0 depends on:
ii libc6 2.7-10 GNU C Library: Shared libraries
libsqlite3-0 recommends no packages.
-- no debconf information
--
To UNSUBSCRIBE, email to debian-bugs-...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listm...@lists.debian.org
Hi Michael,
On Thu, 2008-05-01 at 19:35 -0600, Michael Berg wrote:
> Package: libsqlite3-0
> Version: 3.5.8-2
> Severity: important
>
> When trying to link some code I'm writing against libsqlite3-0 3.5.8-2,
> I get the following error messages from the linker:
> =====
> /usr/lib/libsqlite3.so.0: undefined reference to `dlsym'
> /usr/lib/libsqlite3.so.0: undefined reference to `dlerror'
> /usr/lib/libsqlite3.so.0: undefined reference to `dlopen'
> /usr/lib/libsqlite3.so.0: undefined reference to `dlclose'
> =====
>
> The same code properly compiles and links against libsqlite3-0 3.5.8-1
> and earlier versions of the package under Debian.
These symbols was never in SQLite3 itself, they are provided by the
dynamic linker. Please specify -ldl in your LDFLAGS for the linker.
Please report back if your problem remains or not; in the former case,
can you give me your project for testing?
Regards,
Laszlo/GCS
Hi Michael,
On Thu, 2008-05-01 at 19:35 -0600, Michael Berg wrote:
> Package: libsqlite3-0
> Version: 3.5.8-2
> Severity: important
>
> When trying to link some code I'm writing against libsqlite3-0 3.5.8-2,
> I get the following error messages from the linker:
> =====
> /usr/lib/libsqlite3.so.0: undefined reference to `dlsym'
> /usr/lib/libsqlite3.so.0: undefined reference to `dlerror'
> /usr/lib/libsqlite3.so.0: undefined reference to `dlopen'
> /usr/lib/libsqlite3.so.0: undefined reference to `dlclose'
> =====
>
> The same code properly compiles and links against libsqlite3-0 3.5.8-1
> and earlier versions of the package under Debian.
These symbols was never in SQLite3 itself, they are provided by the
dynamic linker. Please specify -ldl in your LDFLAGS for the linker.
Please report back if your problem remains or not; in the former case,
can you give me your project for testing?
Regards,
Laszlo/GCS
Adding -ldl allows my code to link, but I still view this to be a bug in
the libsqlite3-0 3.5.8-1 package.
$ ldd /usr/lib/libsqlite3.so.0.8.6
linux-vdso.so.1 => (0x00007fffaf9fd000)
libpthread.so.0 => /lib/libpthread.so.0 (0x00002acefb4c3000)
libc.so.6 => /lib/libc.so.6 (0x00002acefb6de000)
/lib64/ld-linux-x86-64.so.2 (0x0000555555554000)
libsqlite3.so.0.8.6 uses libpthread.so.0, but I don't have to specify
-lpthread when I link against libsqlite3 (because libsqlite3 is already
linked against it).
Sine the requirement for libdl is coming from libsqlite3, libsqlite3
should link against libdl.