Date: Tue, 12 Feb 2019 21:01:31 +0200 From: Konstantin Belousov <kostikbel@gmail.com> To: Eugene Grosbein <eugen@grosbein.net> Cc: FreeBSD stable <freebsd-stable@freebsd.org> Subject: Re: amd64, run-time linker and 32bit Message-ID: <20190212190131.GC24863@kib.kiev.ua> In-Reply-To: <a837dcf8-cdfe-02cc-5bf5-ada26178083e@grosbein.net> References: <a837dcf8-cdfe-02cc-5bf5-ada26178083e@grosbein.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Feb 11, 2019 at 12:31:19AM +0700, Eugene Grosbein wrote: > Hi! > > Why our 32-bit run-time linker looks for shared libraries in the /usr/local/lib despite of its absence in /var/run/ld-elf32.so.hints > while 32-bit binary is started under FreeBSD 11.2-STABLE/amd64 ? Most likely because you configured your system this way, or because your binary sets rpath this way. Without the data, we can only use a physhic service. > > If it finds 64-bit version of library in /usr/local/lib, it fails immediately > and does not even re-try to look at other directories noted in /var/run/ld-elf32.so.hints > such as /usr/lib32:/usr/local/lib/compat/lib32:/usr/local/lib/compat/lib32/compat/pkg:/usr/local/lib32/compat > where right 32-bit version is located. > > As workaround, I can use /etc/libmap32.conf and then the binary starts just fine > but there are so many libraries. It should not even try to look to /usr/local/lib > if it is not in the /var/run/ld-elf32.so.hints, should it? Compat32 linker default search path is /lib32:/usr/lib32 unless overritten or reconfigured (not the same as for native linker for 32bit).
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20190212190131.GC24863>