On Mon, Nov 18, 2024 at 01:57:15PM +0200, Eli Zaretskii wrote:
> > Date: Sun, 17 Nov 2024 21:21:05 +0100
> > From: Patrice Dumas <pertu...@free.fr>
> > 
> > % otool -L .libs/Parsetexi.so
> > .libs/Parsetexi.so:
> >     /usr/local/lib/texi2any/libtexinfoxs.0.dylib (compatibility version 
> > 1.0.0, current version 1.0.0)
> >     /usr/local/lib/texi2any/libtexinfo.0.dylib (compatibility version 
> > 1.0.0, current version 1.0.0)
> >     /usr/lib/libiconv.2.dylib (compatibility version 7.0.0, current version 
> > 7.0.0)
> >     /usr/local/opt/gettext/lib/libintl.8.dylib (compatibility version 
> > 13.0.0, current version 13.0.0)
> >     /usr/local/opt/libunistring/lib/libunistring.5.dylib (compatibility 
> > version 8.0.0, current version 8.0.0) 
> >     /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current 
> > version 1319.0.0)
> > 
> > Note that the /usr/local/lib/texi2any/ directory does not exist.
> 
> Isn't the reason to this what libtool wrote in the .la file, i.e.:
> 
> > # Directory that this library needs to be installed in:
> > libdir='/usr/local/lib/texi2any'

Exactly.  But before the installation, libtool should also add the in
build .libs directory in order for libraries to be found in build.

> If you use -L on the link command line to mention the .libs directory,
> does the problem go away?

It is not possible to use -L on the command line, as the libraries are
found through dlopen (or similar) call from within Perl code, using the
Dynaloader facility, and it is not possible to add libraries directly at
least on some platforms, they need to be found through the dlopen (or
similar) call using information in XS objects or libraries.

-- 
Pat

Reply via email to