Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 636344 - dev-tex/latex2html-2015: Can't locate L2hos.pm in @INC
Summary: dev-tex/latex2html-2015: Can't locate L2hos.pm in @INC
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal with 3 votes (vote)
Assignee: TeX project
URL:
Whiteboard:
Keywords:
Depends on: 704630
Blocks:
  Show dependency tree
 
Reported: 2017-11-03 07:22 UTC by qbt937
Modified: 2023-01-09 00:33 UTC (History)
6 users (show)

See Also:
Package list:
dev-tex/latex2html-2015
Runtime testing required: ---


Attachments
emerge --info (file_636344.txt,1 bytes, text/plain)
2017-11-03 07:22 UTC, qbt937
Details
build.log (build.log,3.76 KB, text/plain; charset=utf-8)
2017-11-03 07:23 UTC, qbt937
Details
Use FindBin to find modules with more secure @INC (latex2html-use-findbin.patch,1.30 KB, patch)
2019-04-02 15:05 UTC, Anon Emuss
Details | Diff
Use FindBin to help install with perl-5.26 (latex2html-perl-5.26-use-findbin.patch,1.58 KB, patch)
2019-04-04 03:00 UTC, Anon Emuss
Details | Diff
Escape braces in regexes to run with perl-5.26 (latex2html-perl-5.26-escape-braces.patch,7.04 KB, patch)
2019-04-04 03:03 UTC, Anon Emuss
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description qbt937 2017-11-03 07:22:27 UTC
Created attachment 501980 [details]
emerge --info

[ebuild  N    ] dev-tex/latex2html-2015  USE="gif png"

launching proprietary configuration...
Can't locate L2hos.pm in @INC (you may need to install the L2hos module) (@INC contains: lib /etc/perl /usr/local/lib64/perl5/5.26.1/x86_64-linux /usr/local/lib64/perl5/5.26.1 /usr/lib64/perl5/vendor_perl/5.26.1/x86_64-linux /usr/lib64/perl5/vendor_perl/5.26.1 /usr/local/lib64/perl5 /usr/lib64/perl5/vendor_perl /usr/lib64/perl5/5.26.1/x86_64-linux /usr/lib64/perl5/5.26.1) at ./config/config.pl line 436.
BEGIN failed--compilation aborted at ./config/config.pl line 436.

Probably caused by the perl path changes https://wiki.gentoo.org/wiki/Project:Perl/Dot-In-INC-Removal
Comment 1 qbt937 2017-11-03 07:23:20 UTC
Created attachment 501982 [details]
build.log
Comment 2 qbt937 2017-11-03 07:31:57 UTC
Upgrading to latex2html-2017.2-r2 fixed this for me.
Comment 3 Anon Emuss 2019-04-02 15:05:48 UTC
Created attachment 571578 [details, diff]
Use FindBin to find modules with more secure @INC

I ran into the same issue.  dev-tex/latex2html-2015 fails to install with dev-lang/perl-5.26.2, with the same error message given above.  It does look like a result of the perl path change.  The problematic perl scripts have fixes in them to add the correct paths for the modules in dev-tex/latex2html-2017; attaching a patch that adds the relevant lines to dev-tex/latex2html-2015.  With this patch, dev-tex/latex2html-2015 installs with dev-lang/perl-5.26.2 on my system.

Thanks to qbt937@gmail.com for diagnosing the issue.
Comment 4 Anon Emuss 2019-04-04 03:00:07 UTC
Created attachment 571780 [details, diff]
Use FindBin to help install with perl-5.26

My earlier patch was not quite formatted properly.  This is an updated version with better formatting, but should have the same effects.
Comment 5 Anon Emuss 2019-04-04 03:03:23 UTC
Created attachment 571782 [details, diff]
Escape braces in regexes to run with perl-5.26

I did not test my previous patch very thoroughly.  It gets latex2html-2015 to install on my system, but the program is unable to run (noticed when dev-tex/chktex failed to install).  Running latex2html resulted in an error due to improperly escaped regular expressions which presumably used to work in older versions of perl.  This patch fixes all the unescaped braces I could find with a quick search.  With this patch, latex2html-2015 installs, and the latex2html program runs well enough to install dev-tex/chktex[doc].
Comment 6 Anon Emuss 2019-04-04 03:10:32 UTC
I tried updating to latex2html-2017.2-r2.  It does install and run well enough to install dev-tex/chktex[doc], but I noticed that even that version does not have all the regular expressions fixed.  With latex2html-2017.2-r2 installed:

$ latex2html --version
Unescaped left brace in regex is deprecated here (and will be fatal in Perl 5.30), passed through in regex; marked by <-- HERE in m/^([^{]*){ <-- HERE / at /usr/lib64/latex2html/latex2html.pl line 1866.
This is LaTeX2HTML Version 2017.2 (Released Jan 23, 2017)
by Nikos Drakos, Computer Based Learning Unit, University of Leeds.

With latex2html-2015 installed with the two patches attached above:

$ latex2html --version
This is LaTeX2HTML Version 2008 (1.71)
by Nikos Drakos, Computer Based Learning Unit, University of Leeds.

It looks like either version works well enough for now, but when perl-5.30 comes out, even latex-2017.2-r2 will require some extra patching.
Comment 7 Lars 2019-09-18 23:47:11 UTC
Quick workaround that worked just fine for me:

export PERL5LIB="/var/tmp/portage/dev-tex/latex2html-2015/work/latex2html-2015/"; emerge -vt latex2html
Comment 8 Robert G. Siebeck 2019-11-16 10:56:00 UTC
(In reply to Lars from comment #7)
> Quick workaround that worked just fine for me:
> 
> export
> PERL5LIB="/var/tmp/portage/dev-tex/latex2html-2015/work/latex2html-2015/";
> emerge -vt latex2html

Thanks, that fixed it for me, too.
Comment 9 Mark Purtill 2020-04-26 18:26:44 UTC
For me, dev-tex/latex2html-2015 still has the problem with dev-lang/perl-5.30.1.  It looks like dev-tex/latex2html-2017.2-r2 works okay, but is not stable.  So people like me on (mostly) stable systems will run into this.
Comment 10 Anon Emuss 2020-08-01 23:56:52 UTC
It looks like perl-5.30 backed down from making the unescaped braces fatal (as alluded in comment 6) to allow more time for packages to fix issues.  latex2html-2017.2-r2 still has unescaped braces, but with the current perl-5.30.3, it appears to work fine nevertheless.
Comment 11 Anon Emuss 2023-01-09 00:33:25 UTC
Could this ticket be closed?  The original problem with the include path was fixed in latex2html-2017, and the oldest version currently in the portage tree is latex2html-2021.  The subsequent problem with the regular expression escaping also appears to be fixed.  I just tried installing latex2html-2021.2-r2 and verified that running latex2html --version does not report any problems.  The git history also shows multiple fixes for unescaped braces, so I think the problems brought up in this ticket were all fixed upstream.