<div dir="auto"><div><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jul 22, 2024, 8:09 AM Matt via SlackBuilds-users <<a href="mailto:slackbuilds-users@slackbuilds.org" target="_blank" rel="noreferrer">slackbuilds-users@slackbuilds.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">> Hi all,<br>
> I'm trying to compile openzfs using SBo.<br>
><br>
> I got a long warning list while running the SB:<br>
><br>
> libtool: warning: relinking '<a href="http://libzfs_core.la" rel="noreferrer noreferrer noreferrer" target="_blank">libzfs_core.la</a>'<br>
> libtool: warning: '<a href="http://libzfs.la" rel="noreferrer noreferrer noreferrer" target="_blank">libzfs.la</a>' has not been installed in '/lib64'<br>
> libtool: warning: '<a href="http://libnvpair.la" rel="noreferrer noreferrer noreferrer" target="_blank">libnvpair.la</a>' has not been installed in '/lib64'<br>
> libtool: warning: relinking 'contrib/pam_zfs_key/<a href="http://pam_zfs_key.la" rel="noreferrer noreferrer noreferrer" target="_blank">pam_zfs_key.la</a>'<br>
> libtool: warning: '/tmp/SBo/zfs-2.2.4/<a href="http://libzfs_core.la" rel="noreferrer noreferrer noreferrer" target="_blank">libzfs_core.la</a>' has not been<br>
> installed in '/lib64'<br>
<br>
...<br>
<br>
> installed in '/lib64'<br>
> libtool: warning: '<a href="http://libzfs_core.la" rel="noreferrer noreferrer noreferrer" target="_blank">libzfs_core.la</a>' has not been installed in '/lib64'<br>
> libtool: warning: '/tmp/SBo/zfs-2.2.4/<a href="http://libnvpair.la" rel="noreferrer noreferrer noreferrer" target="_blank">libnvpair.la</a>' has not been<br>
> installed in '/lib64'<br>
> libtool: warning: '<a href="http://libnvpair.la" rel="noreferrer noreferrer noreferrer" target="_blank">libnvpair.la</a>' has not been installed in '/lib64'<br>
> libtool: warning: '<a href="http://libuutil.la" rel="noreferrer noreferrer noreferrer" target="_blank">libuutil.la</a>' has not been installed in '/lib64'<br>
><br>
><br>
> Those should be considered critical or this is something expected?<br>
<br>
Hi Alessandro,<br>
<br>
I ignore these warnings with no issues. If you look at line 118 of<br>
openzfs.SlackBulid, you can see that the .la files are intentionally<br>
removed. This is consistent with the SBo autotools template:<br>
<a href="https://slackbuilds.org/templates/autotools-template.SlackBuild" rel="noreferrer noreferrer noreferrer" target="_blank">https://slackbuilds.org/templates/autotools-template.SlackBuild</a><br>
<br>
As far as why SBo doesn't ship .la files, I do know. Can anyone share why?<br></blockquote></div></div><div dir="auto"><br></div><div dir="auto">This is to match what Slackware does (which historically SBo tries to do). Pat removed most .la files during the development of 15.0 and SBo rolled it out when they pushed their 15.0 repo and updated their templates.</div><div dir="auto"><br></div><div dir="auto">Here's the changelog entry from Pat:</div><div dir="auto"><br></div><div dir="auto"><div dir="auto"><div dir="auto">Thu Apr 19 01:04:06 UTC 2018</div><div dir="auto">Hi folks, and welcome to the third ever Slackware Mass Rebuild (and the</div><div dir="auto">longest ChangeLog entry in project history). There were two primary</div><div dir="auto">motivations for rebuilding everything in the main tree. The first was to</div><div dir="auto">switch to the new C++ ABI. The second was to get rid of all the .la files</div><div dir="auto">in the LD_LIBRARY_PATH. Really, having .la files installed has been mostly</div><div dir="auto">obsolete since things began to use pkg-config instead, but it's not easy</div><div dir="auto">to get rid of them unless you do it all at once. If you just take them out</div><div dir="auto">of one package, any other packages containing .la files that refer to the</div><div dir="auto">removed ones will be broken. We've removed a few here and there before</div><div dir="auto">(and then handled any packages that had referred to them with a rebuild),</div><div dir="auto">but it was time to finally remove all the ones in /lib{,64} and</div><div dir="auto">/usr/lib{,64}. One of the reasons that this really needed to happen is that</div><div dir="auto">many projects are starting to migrate to build systems other than autotools,</div><div dir="auto">and those systems do not generate .la files. So if we didn't get rid of them</div><div dir="auto">now, we might end up in a situation later on where they are being removed</div><div dir="auto">by upstream and then we would have to chase down the dependency breakage and</div><div dir="auto">recompile (possibly many) other packages. The .la files that are outside of</div><div dir="auto">the LD_LIBRARY_PATH were not removed (and shouldn't be) - those ones are</div><div dir="auto">often used by the lt_dlopen() function to load plugins and removing those</div><div dir="auto">ones can break things. But those ones don't cause problems... they aren't</div><div dir="auto">likely to try to</div></div><div dir="auto"><div dir="auto">IMPORTANT NOTE: If you have any third party or other packages installed on</div><div dir="auto">your system that don't come with Slackware, and those packages have installed</div><div dir="auto">any .la files, it is very likely that they refer to some .la files which we</div><div dir="auto">have just removed, and that trying to compile against these packages will no</div><div dir="auto">longer work. Luckily, the solution is simple: remove them. This command will</div><div dir="auto">remove any stale .la files from the LD_LIBRARY_PATH:</div><div dir="auto">rm /{,usr/}lib{,64}/*.la</div><div dir="auto">Moving forward, nothing shipped in Slackware will contain any .la files in</div><div dir="auto">those directories, and any SlackBuilds intended to be used with Slackware 15.0</div><div dir="auto">should contain this bit of script:</div><div dir="auto"># Don't ship .la files:</div><div dir="auto">rm -f $PKG/{,usr/}lib${LIBDIRSUFFIX}/*.la</div><div dir="auto">In addition to those goals, the opportunity was taken to clean up slack-desc</div><div dir="auto">files and make many trivial fixes to build scripts. We've also made it easy</div><div dir="auto">to recompile everything again should there be a good reason to do so.</div><div dir="auto">You'll also find various updates scattered throughout this long list.</div><div dir="auto">Enjoy, and sorry about the bandwidth. ;-)</div><div dir="auto"><br></div><div dir="auto">Jeremy</div></div></div><div dir="auto"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
</blockquote></div></div></div>