Linkerproblem mit Source von web500gw (Browser2LDAP Gateway)
Jan-Benedict Glaw
jbglaw at lug-owl.de
Thu Jul 22 19:53:02 CEST 1999
On Thu, Jul 22, 1999 at 07:43:04PM +0200, Frank Matthieß wrote:
> Ich versuche eine Source zu kompilieren. Beim Linken der Module findet er die
> Lib's nicht.
>
> [ruth at server web500gw-2.1b3]# make
> gcc -o web500gw web500gw.o read.o search.o bind.o modify.o add.o delete.o
> modrdn.o navigation.o util.o web_util.o dir_util.o ldap2html.o messages.o
> init.o config.o detach.o setproctitle.o gwversion.o -llibldap -lliblber
> /usr/bin/ld: cannot open -llibldap: Datei oder Verzeichnis nicht gefunden
> collect2: ld returned 1 exit status
> make: *** [web500gw] Error 1
>
> Mit ls habe ich die Existenz überprüft:
> [ruth at server web500gw-2.1b3]#ls /usr/lib/libl*
> /usr/lib/liblber.a /usr/lib/liblber.so.1
> /usr/lib/libldap.a
> /usr/lib/libldap.so.1 /usr/lib/liblber.so
> /usr/lib/liblber.so.1.0.0
> /usr/lib/libldap.so /usr/lib/libldap.so.1.0.0
>
> Aus dem Makefile:
> ---schipp---
> ########################################################
> # What LDAP package you have installed ... and where?
> ########################################################
> #
> ## If you use OpenLDAP 1.0 or U-Mich LDAP 3.3 package (recommended)
> # If the LDAP include files and libraries installed in standard places
> # (/usr/lib, /usr/include) use this:
> LDAPINCL =
> LDAPLIBS = -llibldap -lliblber
> # set LDAPVERSION (32 for ldap-3.2, 33 for 3.3 etc)
> LDAPVERSION = 33
> VERSION = 3.3
> ---schnapp---
>
> Die Zeile mit LDAPLIBS = -lldap -llber
> habe ich auf LDAPLIBS = -llibldap -lliblber
> verändert, da ich die 'alten' nicht habe.
> Was hat er nun ? Die Lib's liegen im Standarddir, aber der Linker findet sie
> nicht?
> Is mir zu hoch.
Also:
------------- man ld --------------
-Lsearchdir
This command adds path searchdir to the list of
paths that ld will search for archive libraries.
You may use this option any number of times.
------------- /man ld --------------
(ach ja, der Parameter "-L" gilt auch für den gcc)
und
---------- man ld -------------
-lar Add an archive file ar to the list of files to
link. This option may be used any number of times.
ld will search its path-list for occurrences of
libar.a for every ar specified.
---------- /man ld -------------
...damit läßt Du also nach der lib "liblibldap.irgendwas" suchen. Die
gibt's wirklich nicht... ...und wenn Du mal auf die Zeile guckst, mit
der der gcc aufgerufen wird, dann ist da kein "-L"... Versuch's mal damit,
den irgendwo zu definieren, ist egal wo, hauptsache, er steht dann da;)
MfG, JBG
--
Hi! I'm a .signature virus! cp me into your .signature file to help me spread!
More information about the Linux
mailing list