dev-tex/chktex-1.6.4 don't work with USE="doc" Reproducible: Always Steps to Reproduce: USE="doc" emerge -v --oneshot =dev-tex/chktex-1.6.4 Actual Results: ... * ERROR: dev-tex/chktex-1.6.4 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 159: Called die * The specific snippet of code: * emake html || die "emake html failed"; * The die message: * emake html failed * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/log/portage/dev-tex:chktex-1.6.4:20080326-104908.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-tex/chktex-1.6.4/temp/environment'. ... Expected Results: no error # emerge -v --oneshot =dev-tex/chktex-1.6.4 These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] dev-tex/chktex-1.6.4 USE="doc* -debug" 0 kB Total: 1 package (1 reinstall), Size of downloads: 0 kB >>> Verifying ebuild Manifests... >>> Emerging (1 of 1) dev-tex/chktex-1.6.4 to / * chktex-1.6.4.tar.gz RMD160 SHA1 SHA256 size ;-) ... [ ok ] * checking ebuild checksums ;-) ... [ ok ] * checking auxfile checksums ;-) ... [ ok ] * checking miscfile checksums ;-) ... [ ok ] * checking chktex-1.6.4.tar.gz ;-) ... [ ok ] >>> Unpacking source... >>> Unpacking chktex-1.6.4.tar.gz to /var/tmp/portage/dev-tex/chktex-1.6.4/work >>> Source unpacked. >>> Compiling source in /var/tmp/portage/dev-tex/chktex-1.6.4/work/chktex-1.6.4 ... ./configure --prefix=/usr --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info -- datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-debug-info --libdir=/usr/lib64 -- build=x86_64-pc-linux-gnu ##### ### ### ######## ### ## ### ## ## ## ## ## #0 @@ @@ @@@ @@ @@ @@ ####### @@ @ @@ @@@ @@ @@ @@ @@ ## # @@ && && && &&&& && @@ & && &&& && && && && && && @@@@ & && %%%%% %%% %%% %%% %%% %% && %%% %%% && & %%%%%%% Welcome to the ChkTeX configuration script! Before taking the program in use, please read the COPYING file; it applies to this script as well as the remaining parts of the package. In short: *NO WARRANTIES WHATSOEVER* Copyright � 1995-96 Jens T. Berger Thielemann <jensthi@ifi.uio.no> checking whether lacheck replacement should be installed... no checking whether runtime debug info should be used... no checking whether the emacs hack should be installed... no checking whether coverage testing is enabled... no checking for x86_64-pc-linux-gnu-gcc... x86_64-pc-linux-gnu-gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether x86_64-pc-linux-gnu-gcc accepts -g... yes checking for x86_64-pc-linux-gnu-gcc option to accept ISO C89... none needed checking C to warn at nonstrict prototypes... -Wstrict-prototypes checking for C compiler warning flags... -Wall checking for a BSD-compatible install... /usr/bin/install -c checking whether ln -s works... yes checking for perl5... no checking for perl... /usr/bin/perl checking whether perl is v5 or higher... yes checking whether #! works in shell scripts... yes checking for groff... groff -man -P-bu -Tlatin1 checking for latex... /usr/bin/latex checking for dvips... /usr/bin/dvips checking for lynx... /usr/bin/lynx checking for latex2html... /usr/bin/latex2html checking for tgetent in -ltermlib... no checking for tgetent in -ltermcap... no checking how to run the C preprocessor... x86_64-pc-linux-gnu-gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking limits.h usability... yes checking limits.h presence... yes checking for limits.h... yes checking stat.h usability... no checking stat.h presence... no checking for stat.h... no checking for strings.h... (cached) yes checking stdarg.h usability... yes checking stdarg.h presence... yes checking for stdarg.h... yes checking for sys/stat.h... (cached) yes checking termcap.h usability... yes checking termcap.h presence... yes checking for termcap.h... yes checking termlib.h usability... no checking termlib.h presence... no checking for termlib.h... no checking for unistd.h... (cached) yes checking for an ANSI C-conforming const... yes checking for inline... inline checking for size_t... yes checking for vprintf... yes checking for _doprnt... no checking for access... yes checking for closedir... yes checking for fileno... yes checking for isatty... yes checking for opendir... yes checking for readdir... yes checking for stat... yes checking for strcasecmp... yes checking for strdup... yes checking for strlwr... no checking for strtol... yes configure: creating ./config.status config.status: creating stamp-h config.status: creating Makefile config.status: WARNING: Makefile.in seems to ignore the --datarootdir setting config.status: creating deweb config.status: creating MakeHTML config.status: creating Readme.header config.status: creating ChkTeX.tex config.status: creating config.h Makefile:110: .ChkTeX.d: Datei oder Verzeichnis nicht gefunden Makefile:110: .FindErrs.d: Datei oder Verzeichnis nicht gefunden Makefile:110: .OpSys.d: Datei oder Verzeichnis nicht gefunden Makefile:110: .Resource.d: Datei oder Verzeichnis nicht gefunden Makefile:110: .Utility.d: Datei oder Verzeichnis nicht gefunden x86_64-pc-linux-gnu-gcc -M -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ Utility.c > .Utility.d.tmp sed 's,\(Utility\)\.o *:,\1.o .Utility.d : Makefile,g' .Utility.d.tmp > .Utility.d rm -f .Utility.d.tmp 2>/dev/null x86_64-pc-linux-gnu-gcc -M -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ Resource.c > .Resource.d.tmp sed 's,\(Resource\)\.o *:,\1.o .Resource.d : Makefile,g' .Resource.d.tmp > .Resource.d rm -f .Resource.d.tmp 2>/dev/null x86_64-pc-linux-gnu-gcc -M -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ OpSys.c > .OpSys.d.tmp sed 's,\(OpSys\)\.o *:,\1.o .OpSys.d : Makefile,g' .OpSys.d.tmp > .OpSys.d rm -f .OpSys.d.tmp 2>/dev/null x86_64-pc-linux-gnu-gcc -M -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ FindErrs.c > .FindErrs.d.tmp sed 's,\(FindErrs\)\.o *:,\1.o .FindErrs.d : Makefile,g' .FindErrs.d.tmp > .FindErrs.d rm -f .FindErrs.d.tmp 2>/dev/null x86_64-pc-linux-gnu-gcc -M -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ ChkTeX.c > .ChkTeX.d.tmp sed 's,\(ChkTeX\)\.o *:,\1.o .ChkTeX.d : Makefile,g' .ChkTeX.d.tmp > .ChkTeX.d rm -f .ChkTeX.d.tmp 2>/dev/null x86_64-pc-linux-gnu-gcc -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ -march=nocona -O2 -pipe -Wall -c ChkTeX.c -o ChkTeX.o ChkTeX.c:106: Warnung: »OnText« definiert, aber nicht verwendet ChkTeX.c:108: Warnung: »OffText« definiert, aber nicht verwendet x86_64-pc-linux-gnu-gcc -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ -march=nocona -O2 -pipe -Wall -c FindErrs.c -o FindErrs.o x86_64-pc-linux-gnu-gcc -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ -march=nocona -O2 -pipe -Wall -c OpSys.c -o OpSys.o x86_64-pc-linux-gnu-gcc -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ -march=nocona -O2 -pipe -Wall -c Resource.c -o Resource.o x86_64-pc-linux-gnu-gcc -I. -I. -DHAVE_CONFIG_H -DSYSCONFDIR=\"/etc\" -D__unix__ -march=nocona -O2 -pipe -Wall -c Utility.c -o Utility.o x86_64-pc-linux-gnu-gcc -o chktex ChkTeX.o FindErrs.o OpSys.o Resource.o Utility.o rm -r HTML rm: Entfernen von „HTML“ nicht möglich: Datei oder Verzeichnis nicht gefunden make: [html] Fehler 1 (ignoriert) mkdir HTML chmod u+x MakeHTML ./MakeHTML ChkTeX.tex > HTML/ChkTeX.tex cd HTML; /usr/bin/latex2html ChkTeX.tex Error: No such image type ''. This installation supports (first is default): Compilation failed in require at /usr/bin/latex2html line 39. make: *** [html] Fehler 2 * * ERROR: dev-tex/chktex-1.6.4 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 159: Called die * The specific snippet of code: * emake html || die "emake html failed"; * The die message: * emake html failed * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/log/portage/dev-tex:chktex-1.6.4:20080326-104908.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-tex/chktex-1.6.4/temp/environment'. * * Messages for package dev-tex/chktex-1.6.4: * * ERROR: dev-tex/chktex-1.6.4 failed. * Call stack: * ebuild.sh, line 49: Called src_compile * environment, line 159: Called die * The specific snippet of code: * emake html || die "emake html failed"; * The die message: * emake html failed * * If you need support, post the topmost build error, and the call stack if relevant. * A complete build log is located at '/var/log/portage/dev-tex:chktex-1.6.4:20080326-104908.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-tex/chktex-1.6.4/temp/environment'. *
# emerge -pv dev-tex/latex2html These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild R ] dev-tex/latex2html-2002.2.1_pre20041025-r1 USE="gif png" 0 kB Total: 1 package (1 reinstall), Size of downloads: 0 kB
Please set your locales to C when reporting bugs.
it seems to be a problem in latex2html; could you please check it works fine ?
sorry for the wrong locales! latex2html seems to work fine: 1. emerge of dev-tex/latex2html-2002.2.1_pre20041025-r1 with tests enabled works. 2. after failed emerging dev-tex/chktex-1.6.4 I can use latex2html in the directory /var/tmp/portage/dev-tex/chktex-1.6.4/work/chktex-1.6.4/HTML with 'latex2html ChkTeX.tex'. There are no errors and it creates the HTML-pages.
emerge -v --oneshot --emptytree =dev-tex/chktex-1.6.4 solves the problem! sorry.
(In reply to comment #5) > emerge -v --oneshot --emptytree =dev-tex/chktex-1.6.4 > solves the problem! somehow inefficient. I found that in /usr/lib/latex2html/l2hconf.pm line 52 there is an empty list @IMAGE_TYPES which causes the above error. Setting that line to @IMAGE_TYPES = qw(png gif); as specified as use flags for latex2html will make it work. chktex compiles without any error. It is an latex2html error not setting up l2conf.pm the right way. ervin
The problem is how the latex2html configure (Perl) script determines the version number of pnmcrop. This is the code snippet: > ($stat,$msg,$err) = &get_out_err("$pnmcrop -version"); > my $vers = ''; > $msg = $msg || $err; > if ($msg =~ /(^|\s*)Version.*\s(\d+)\..*\s*([\n\r]|$)/is) { $vers = $2; } However, the output of the version number from pnmcrop is localised (hard coded at runtime): $ pnmcrop -version pnmcrop: Using libnetpbm from Netpbm Version: Netpbm 10.49.0 pnmcrop: Compiled So 8. Aug 12:59:10 CEST 2010 by user "root" pnmcrop: BSD defined pnmcrop: RGB_ENV='RGBDEF' pnmcrop: RGBENV= 'RGBDEF' (env vbl is unset) As the date is localised (de_DE.utf8), $2 does not match 10 in "Netpbm 10.49.0", but 8 in "So 8. Aug". Hence the error: > checking for pnmcrop... /usr/bin/pnmcrop > > This 8 for /usr/bin/pnmcrop is not recognisable.no > Warning: Will not be able to generate images due to above failure. > Hint: Get netpbm version 1mar1994p1 (the p1 is important!) to fix this > error, or later versions (v9.15+) from sourceforge.net . Everything works fine with LC_ALL=C emerge -1 netpbm emerge -1 latex2html emerge -1 chktex solution: find a way to properly determine version numbers :) real solution: Don't know what is best. Probably should be fixed upstream. However, the risk of breaking things is very high. Maybe the s parameter at the end of the regular expression can be dropped? Should I open a new bug report as this one is pretty old?
I forgot to mention: this bug is probably only triggered if netpbm is compiled on one of the first 8 days of a new month, because the Perl script checks for > } elsif ($vers > 8) {