x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c -I./kpathsea -I/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c/../.. -Wimplicit -Wreturn-type -Os -pipe -march=native -Os -pipe -march=native -Wimplicit-function-declaration -Wno-error=implicit-function-declaration -c -o main.o /var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c/main.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c -I./kpathsea -I/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c/../.. -Wimplicit -Wreturn-type -Os -pipe -march=native -Os -pipe -march=native -Wimplicit-function-declaration -Wno-error=implicit-function-declaration -c -o fixwrites.o /var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c/fixwrites.c x86_64-pc-linux-gnu-gcc -DHAVE_CONFIG_H -I. -I/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c -I./kpathsea -I/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c/../.. -Wimplicit -Wreturn-type -Os -pipe -march=native -Os -pipe -march=native -Wimplicit-function-declaration -Wno-error=implicit-function-declaration -c -o splitup.o /var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-20200406-source/texk/web2c/web2c/splitup.c slibtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -Wimplicit -Wreturn-type -Os -pipe -march=native -Os -pipe -march=native -Wimplicit-function-declaration -Wno-error=implicit-function-declaration -Wl,-O1 -Wl,--as-needed -o splitup splitup.o -L. -lweb2c slibtool: link: x86_64-pc-linux-gnu-gcc splitup.o -Wimplicit -Wreturn-type -Os -pipe -march=native -Os -pipe -march=native -Wimplicit-function-declaration -Wno-error=implicit-function-declaration -Wl,-O1 -Wl,--as-needed -L./.libs -lweb2c -o .libs/splitup /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lweb2c collect2: error: ld returned 1 exit status slibtool: exec error upon slbt_exec_link_create_executable(), line 1613: (see child process error messages). slibtool: < returned to > slbt_exec_link(), line 1902. make[6]: *** [Makefile:509: splitup] Error 2 make[6]: *** Waiting for unfinished jobs.... slibtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -Wimplicit -Wreturn-type -Os -pipe -march=native -Os -pipe -march=native -Wimplicit-function-declaration -Wno-error=implicit-function-declaration -Wl,-O1 -Wl,--as-needed -o fixwrites fixwrites.o -L. -lweb2c slibtool: link: x86_64-pc-linux-gnu-gcc fixwrites.o -Wimplicit -Wreturn-type -Os -pipe -march=native -Os -pipe -march=native -Wimplicit-function-declaration -Wno-error=implicit-function-declaration -Wl,-O1 -Wl,--as-needed -L./.libs -lweb2c -o .libs/fixwrites /usr/lib/gcc/x86_64-pc-linux-gnu/10.2.0/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lweb2c collect2: error: ld returned 1 exit status slibtool: exec error upon slbt_exec_link_create_executable(), line 1613: (see child process error messages). slibtool: < returned to > slbt_exec_link(), line 1902. make[6]: *** [Makefile:501: fixwrites] Error 2 make[6]: Leaving directory '/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-core-2020_build/texk/web2c/web2c' make[5]: *** [Makefile:432: all] Error 2 make[5]: Leaving directory '/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-core-2020_build/texk/web2c/web2c' make[4]: *** [Makefile:16966: all-recursive] Error 1 make[4]: Leaving directory '/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-core-2020_build/texk/web2c' make[3]: *** [Makefile:5089: all] Error 2 make[3]: Leaving directory '/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-core-2020_build/texk/web2c' make[2]: *** [Makefile:909: recurse] Error 1 make[2]: Leaving directory '/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-core-2020_build/texk' make[1]: *** [Makefile:486: all-recursive] Error 1 make[1]: Leaving directory '/var/tmp/portage/app-text/texlive-core-2020-r12/work/texlive-core-2020_build/texk' make: *** [Makefile:577: all-recursive] Error 1 * ERROR: app-text/texlive-core-2020-r12::gentoo failed (compile phase): * emake failed
Created attachment 690396 [details] texlive-core-2020-r12:20210309-224945.log buildlog
I haven't found a fix yet, but this works with GNU libtool because it silently filters out -lweb2c (And -no-undefined). https://www.tug.org/svn/texlive/trunk/Build/source/texk/web2c/web2c/Makefile.am?revision=57915&view=markup#l58 Removing -lweb2c is not enough because it will then fail on undefined references.
Given how calcified texlive upstream is I am not enthusiastic about slibtool there, it is likely never to be fixed.
rdlibtool show the command: rdlibtool --tag=CC --mode=link x86_64-pc-linux-gnu-gcc -Wimplicit -Wreturn-type -O2 -pipe -Wl,-O1 -Wl,--as-needed -o fixwrites fixwrites.o -L. -lweb2c and then the actual command executed: rdlibtool: link: x86_64-pc-linux-gnu-gcc fixwrites.o -Wimplicit -Wreturn-type -O2 -pipe -Wl,-O1 -Wl,--as-needed -L./.libs -lweb2c -o .libs/fixwrites Also proftpd has this same issue. https://github.com/proftpd/proftpd/pull/1203
This PR should of been tagged here I thought? https://github.com/gentoo/gentoo/pull/20069
*** Bug 829814 has been marked as a duplicate of this bug. ***
For the record, since the PR was closed: This stems from passing `-L. -lweb2c` to libtool to link the non-libtool library libweb2c.a. It could be fixed by using libtool to make libweb2c, but the easy fix is to simply provide the fixed name of the library (libweb2c.a) instead of `-L. -lweb2c`. A small patch or sed to https://tug.org/svn/texlive/trunk/Build/source/texk/web2c/web2c/Makefile.in?view=markup#l419 in src_prepare() should take care of it.
Upstream report: https://tug.org/pipermail/tex-k/2022-January/003748.html
The correct solution is to pass libweb2c.la, not libweb2c.a.
(In reply to orbea from comment #9) > The correct solution is to pass libweb2c.la, not libweb2c.a. Well, I agree, but I didn't want to dig through the build system to figure out where .a needs to be changed to .la. Upstream accepted the workaround so at least we'll be able to build it in the meantime.
Also recorded the slibtool-libtool incompatibility as https://dev.midipix.org/cross/slibtool/issue/49
This actually needed an additional bit of hacking, https://tug.org/svn/texlive?view=revision&revision=61639 But it should be safe(ish) to backport now.
(In reply to Michael Orlitzky from comment #12) > This actually needed an additional bit of hacking, > > https://tug.org/svn/texlive?view=revision&revision=61639 > > But it should be safe(ish) to backport now. Please feel free (it was on my list to look at but you're better positioned to test it right now anyway)
(In reply to Sam James from comment #13) > (In reply to Michael Orlitzky from comment #12) > > This actually needed an additional bit of hacking, > > > > https://tug.org/svn/texlive?view=revision&revision=61639 > > > > But it should be safe(ish) to backport now. > > Please feel free (it was on my list to look at but you're better positioned > to test it right now anyway) no point in doing it right now, it can wait up until the next release which is soon in anyway
(In reply to Mikle Kolyada from comment #14) > (In reply to Sam James from comment #13) > > (In reply to Michael Orlitzky from comment #12) > > > This actually needed an additional bit of hacking, > > > > > > https://tug.org/svn/texlive?view=revision&revision=61639 > > > > > > But it should be safe(ish) to backport now. > > > > Please feel free (it was on my list to look at but you're better positioned > > to test it right now anyway) > > no point in doing it right now, it can wait up until the next release which > is soon in anyway (... but thank you for taking it upstream in anywa)
I don't think anyone is actiely working on TL 2022 so feel free to attach a version which applies cleanly.
Created attachment 813328 [details, diff] texlive-core-2021-web2c-slibtool-fix.patch I had forgotten how much fun the SVN web interface is.
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f496f44c04b285b80c7c987eb12ea8d5eb5722a7 commit f496f44c04b285b80c7c987eb12ea8d5eb5722a7 Author: Sam James <sam@gentoo.org> AuthorDate: 2022-09-23 01:39:55 +0000 Commit: Sam James <sam@gentoo.org> CommitDate: 2022-09-23 01:46:54 +0000 app-text/texlive-core: backport slibtool patch May as well given there's nobody working on the 2022 bump right now. This was also one of the few (notable, at least) packages left which didn't build w/ slibtool. Closes: https://bugs.gentoo.org/775170 Thanks-to: Michael Orlitzky <mjo@gentoo.org> Signed-off-by: Sam James <sam@gentoo.org> .../files/texlive-core-2021-slibtool.patch | 98 ++++++ app-text/texlive-core/texlive-core-2021-r4.ebuild | 366 +++++++++++++++++++++ 2 files changed, 464 insertions(+)