Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 196123 - app-text/xetex-0.995 cannot build because of some problem with how it sets up its configuration.
Summary: app-text/xetex-0.995 cannot build because of some problem with how it sets up...
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Joshua (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-10-17 01:10 UTC by Ferris McCormick (RETIRED)
Modified: 2007-10-17 19:09 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ferris McCormick (RETIRED) gentoo-dev 2007-10-17 01:10:29 UTC
On 25 Sept. 2007, xe[la]tex worked well.  And if I have it packages up and look for a critical file, everything is happy:

anaconda All # tar tjvf xetex-0.995.tbz2 | grep xelatex.fmt
-rw-r--r-- 0/0         3047342 2007-09-25 14:06 var/lib/texmf/web2c/xelatex.fmt

Now, let's package it up today (yes, I saved the good package file) and try that again (we are talking one sparc SB1000 and two amd64 systems; anaconda is an amd64):

anaconda All # tar tjvf xetex-0.995.tbz2 | grep xelatex.fmt

bzip2: (stdin): trailing garbage after EOF ignored

This suggests that xe[la]tex built today cannot possibly work because xelatex cannot get started without that file.  This version is known to be bad:
Fri Oct  5 18:47:41 2007 >>> app-text/xetex-0.995

We can pin this down a bit more.  Let's look at what 'ebuild xetex-0.995.ebuild preinst' does in its entirety:
==================================
>>> Source compiled.
/var/tmp/portage
mv: cannot stat `/var/tmp/portage/app-text/xetex-0.995/image/usr/share/texmf-site/tex/generic/hyphen': No such file or directory
texhash: Done.
cp: with --parents, the destination must be a directory
Try `cp --help' for more information.
fmtutil: config file `/var/tmp/portage/app-text/xetex-0.995/image//var/lib/texmf/web2c/fmtutil.cnf' not found.
fmtutil: config file `/var/tmp/portage/app-text/xetex-0.995/image//var/lib/texmf/web2c/fmtutil.cnf' not found.
fmtutil: config file `/var/tmp/portage/app-text/xetex-0.995/image//var/lib/texmf/web2c/fmtutil.cnf' not found.
fmtutil: config file `/var/tmp/portage/app-text/xetex-0.995/image//var/lib/texmf/web2c/fmtutil.cnf' not found.
texlinks: config file `fmtutil.cnf' not found.
mv: cannot stat `/var/tmp/portage/app-text/xetex-0.995/image//var/lib/texmf/web2c/fmtutil.cnf': No such file or directory
mv: cannot stat `/var/tmp/portage/app-text/xetex-0.995/image/usr/share/texmf/tex/generic/hyphen': No such file or directory
=================================
Now, for completeness, let's check the replacement ebuild from Bug 191815.  preinst is a nop now, and trying it just gives a couple:
find: `/var/tmp/portage/app-text/xetex-0.995/image//': No such file or directory
install still builds a bad image, but it's better.  So finally, we'll
emerge -B xetex
again.  Same bad failure
anaconda All # tar tjvf xetex-0.995.tbz2 | grep xelatex.fmt

bzip2: (stdin): trailing garbage after EOF ignored
(still nothing in /var, which should be:)

=====================
tar tvjf xetex-0.995.tbz2 | grep var/
drwxr-xr-x 0/0               0 2007-08-11 17:35 var/
drwxr-xr-x 0/0               0 2007-08-14 22:55 var/lib/
drwxr-xr-x 0/0               0 2007-09-25 14:06 var/lib/texmf/
drwxr-xr-x 0/0               0 2007-09-14 21:13 var/lib/texmf/web2c/
-rw-r--r-- 0/0         3047342 2007-09-25 14:06 var/lib/texmf/web2c/xelatex.fmt
-rw-r--r-- 0/0           14710 2007-09-25 14:06 var/lib/texmf/web2c/xelatex.log
-rw-r--r-- 0/0         1655250 2007-09-25 14:06 var/lib/texmf/web2c/xetex.fmt
-rw-r--r-- 0/0            2628 2007-09-25 14:06 var/lib/texmf/web2c/xetex.log
=====================

Clearly, environment matters.  Here is the anaconda amd64:
================================
anaconda xetex # emerge --info
Portage 2.1.3.14 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.20-gentoo-r8 x86_64)
=================================================================
System uname: 2.6.20-gentoo-r8 x86_64 Dual Core AMD Opteron(tm) Processor 270
Timestamp of tree: Tue, 16 Oct 2007 15:30:09 +0000
ccache version 2.4 [disabled]
app-shells/bash:     3.2_p17
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.4.4-r5
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.9-r2
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.3.16
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.22-r2
ABI="amd64"
ACCEPT_KEYWORDS="amd64"
ALSA_CARDS="ca0106"
ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol"
ARCH="amd64"
ASFLAGS_x86="--32"
AUTOCLEAN="yes"
CBUILD="x86_64-pc-linux-gnu"
CDEFINE_amd64="__x86_64__"
CDEFINE_x86="__i386__"
CFLAGS="-march=k8 -msse3 -O2 -pipe"
CFLAGS_x86="-m32 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib"
CHOST="x86_64-pc-linux-gnu"
CHOST_amd64="x86_64-pc-linux-gnu"
CHOST_x86="i686-pc-linux-gnu"
CLASSPATH="."
CLEAN_DELAY="5"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CRYSTAL_CONFIG="/etc/crystalspace"
CRYSTAL_PLUGIN="/usr/lib64/crystalspace"
CVS_RSH="ssh"
CXXFLAGS="-march=k8 -msse3 -O2 -pipe"
DEFAULT_ABI="amd64"
DISPLAY=":0.0"
DISTDIR="/usr/portage/distfiles"
EDITOR="/usr/bin/vim"
ELIBC="glibc"
EMERGE_DEFAULT_OPTS="--verbose"
EMERGE_WARNING_DELAY="10"
FEATURES="collision-protect cvs distlocks metadata-transfer multilib-strict parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
FETCHCOMMAND="/usr/bin/wget -t 5 -T 60 --passive-ftp -O ${DISTDIR}/${FILE} ${URI}"
FFLAGS="-pipe -O2 -march=k8"
FLTK_DOCDIR="/usr/share/doc/fltk-1.1.7/html"
GCC_PATH="/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2"
GCC_SPECS=""
GDK_USE_XFT="1"
GENTOO_MIRRORS="ftp://mirror.datapipe.net/gentoo ftp://gentoo.mirrors.pair.com/ http://213.186.33.38/gentoo-distfiles/ http://gentoo.cites.uiuc.edu/pub/gentoo/ http://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/"
G_BROKEN_FILENAMES="1"
G_FILENAME_ENCODING="UTF-8"
HOME="/root"
INFOPATH="/usr/share/info:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.17/info:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/info:/usr/share/info/emacs-21"
INPUT_DEVICES="keyboard mouse"
JAVAC="/etc/java-config-2/current-system-vm/bin/javac"
JAVA_HOME="/etc/java-config-2/current-system-vm"
JDK_HOME="/etc/java-config-2/current-system-vm"
KDEDIRS="/usr:/usr/local:/usr/kde/3.5"
KERNEL="linux"
LCD_DEVICES=""
LDFLAGS_x86="-m elf_i386 -L/emul/linux/x86/lib -L/emul/linux/x86/usr/lib"
LESS="-R -M --shift 5"
LESSOPEN="|lesspipe.sh %s"
LIBDIR_amd64="lib64"
LIBDIR_x86="lib32"
LINGUAS="en en_US"
LOGNAME="root"
LS_COLORS="no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:su=37;41:sg=30;43:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.pdf=00;32:*.ps=00;32:*.txt=00;32:*.patch=00;32:*.diff=00;32:*.log=00;32:*.tex=00;32:*.doc=00;32:*.aac=00;36:*.au=00;36:*.flac=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:"
MAKEOPTS="-j6"
MANPATH="/etc/java-config-2/current-system-vm/man:/usr/local/share/man:/usr/share/man:/usr/share/binutils-data/x86_64-pc-linux-gnu/2.17/man:/usr/share/gcc-data/x86_64-pc-linux-gnu/4.1.2/man:/etc/java-config/system-vm/man/:/usr/kde/3.5/share/man:/usr/qt/3/doc/man"
MULTILIB_ABIS="amd64 x86"
MULTILIB_STRICT_DENY="64-bit.*shared object"
MULTILIB_STRICT_DIRS="/lib /usr/lib /usr/kde/*/lib /usr/qt/*/lib /usr/X11R6/lib"
MULTILIB_STRICT_EXEMPT="(perl5|gcc|gcc-lib|binutils|eclipse-3|debug|portage)"
OLDPWD="/usr/portage/app-text"
OPENGL_PROFILE="nvidia"
PAGER="/usr/bin/less"
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2:/usr/kde/3.5/sbin:/usr/kde/3.5/bin:/usr/qt/3/bin"
PKGDIR="/usr/portage/packages"
PKG_CONFIG_PATH="/usr/qt/3/lib64/pkgconfig"
PORTAGE_ARCHLIST="ppc s390 amd64 x86 ppc64 x86-fbsd m68k arm sparc sh mips ia64 alpha ppc-macos hppa sparc-fbsd"
PORTAGE_BINHOST_CHUNKSIZE="3000"
PORTAGE_BIN_PATH="/usr/lib64/portage/bin"
PORTAGE_CONFIGROOT="/"
PORTAGE_DEBUG="0"
PORTAGE_DEPCACHEDIR="/var/cache/edb/dep"
PORTAGE_ELOG_CLASSES="warn error log"
PORTAGE_ELOG_MAILFROM="portage@localhost"
PORTAGE_ELOG_MAILSUBJECT="[portage] ebuild log for ${PACKAGE} on ${HOST}"
PORTAGE_ELOG_MAILURI="root"
PORTAGE_ELOG_SYSTEM="save"
PORTAGE_GID="250"
PORTAGE_INST_GID="0"
PORTAGE_INST_UID="0"
PORTAGE_PYM_PATH="/usr/lib64/portage/pym"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_RSYNC_RETRIES="3"
PORTAGE_TMPDIR="/var/tmp"
PORTAGE_TMPFS="/dev/shm"
PORTAGE_WORKDIR_MODE="0700"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
PRELINK_PATH_MASK="/usr/lib/gstreamer-0.10 /usr/lib/gstreamer-0.10:/usr/lib/gstreamer-0.8"
PWD="/usr/portage/app-text/xetex"
PYTHONPATH="/usr/lib64/portage/pym"
QMAKESPEC="linux-g++"
QTDIR="/usr/qt/3"
REMOTEHOST=""
RESUMECOMMAND="/usr/bin/wget -c -t 5 -T 60 --passive-ftp -O ${DISTDIR}/${FILE} ${URI}"
ROOT="/"
ROOTPATH="/opt/bin:/usr/x86_64-pc-linux-gnu/gcc-bin/4.1.2:/usr/kde/3.5/sbin:/usr/kde/3.5/bin:/usr/qt/3/bin"
RPMDIR="/usr/portage/rpm"
RUBYOPT="-rauto_gem"
SHELL="/bin/bash"
SHLVL="1"
STAGE1_USE="nptl nptlonly unicode"
SYMLINK_LIB="yes"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
TERM="xterm"
USE="3dnow 3dnowext X Xaw3d acl alsa amd64 arts bash-completion berkdb bitmap-fonts bzip2 cli cpudetection cracklib crypt cups dri emacs fortran gdbm gif glx gmp gpm gtk iconv isdnlog jpeg midi mmx mmxext motif mudflap mysql ncurses nls nptl nptlonly opengl openmp pam pcre pdf perl png portaudio pppd python readline reflection ruby sdl session spell spl sqlite sse sse2 sse3 ssl tcl tcpd tetex tiff tk truetype truetype-fonts type1-fonts unicode vorbis xorg zlib" ALSA_CARDS="ca0106" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LINGUAS="en en_US" USERLAND="GNU" VIDEO_CARDS="nv nvidia"
USER="root"
USERLAND="GNU"
USE_EXPAND="ALSA_CARDS ALSA_PCM_PLUGINS CAMERAS CROSSCOMPILE_OPTS DVB_CARDS ELIBC FCDSL_CARDS FOO2ZJS_DEVICES FRITZCAPI_CARDS INPUT_DEVICES KERNEL LCD_DEVICES LINGUAS LIRC_DEVICES MISDN_CARDS USERLAND VIDEO_CARDS"
USE_EXPAND_HIDDEN="CROSSCOMPILE_OPTS ELIBC KERNEL USERLAND"
USE_ORDER="env:pkg:conf:defaults:pkginternal:env.d"
VIDEO_CARDS="nv nvidia"
XARGS="xargs -r"
XDG_DATA_DIRS="/usr/share:/usr/kde/3.5/share:/usr/local/share"
_="/usr/bin/emerge"
======================================
These systems have always had the same portage version; that's about it.  For completeness, I'll back one of the others down to whatever portage was used on 25 Sept and try with the new version of the ebuild.

Sorry to have gone on so long.  I recovered the other systems with the good package on this system (but using their xe[la]tex programs).
Comment 1 Ferris McCormick (RETIRED) gentoo-dev 2007-10-17 12:25:29 UTC
I can narrow it down as to dates, because I believe something upgraded within this time bracket destroyed the build:

xetex built on 25 Sept --- good (that's the good example in that very long description).
xetex built on 5 Oct   --- bad (missing .fmt files, SB1000, amd64)
Comment 2 Ferris McCormick (RETIRED) gentoo-dev 2007-10-17 19:09:55 UTC
(In reply to comment #0)
> On 25 Sept. 2007, xe[la]tex worked well.  And if I have it packages up and look
> for a critical file, everything is happy:
> 
> anaconda All # tar tjvf xetex-0.995.tbz2 | grep xelatex.fmt
> -rw-r--r-- 0/0         3047342 2007-09-25 14:06 var/lib/texmf/web2c/xelatex.fmt
> 
There is a problem here, or was, but it is not xetex's.  The root problem is in pkg_preinst with the texhash (or a bit beyond), which can hang.  This, I believe, is a timing gate problem between bash-3.2_p17 & glibc-2.5-r4 and is not reproducible with consistency.  You have to abort out of it, and unfortunately that can leave an existing xetex or tetex in a horrible state.  I have seen:
missing .fmt or .cnf files;
an empty texmf.cnf;
a need to do a complete rehash;
with a texhash which has forgotten which directories it cares about.

For fun, I have rebuilt bash against glibc-2.6.1 and made sure that all of tex is in reasonable shape.  Also, I have been playing with the proposed xetex-0.995.ebuild replacement in Bug 191815.  So far, on liasis (another amd64 where the problem originally showed up yesterday), I've now been able to 5 working xetex s in a row successfully.  Yesterday that would have been impossible because of a cascading problem traced back to some sort lock in a tetex utility.

Just about everything in the original description is wrong because my testing methods on anaconda were inconnrect at best and destructive at worst.

So, the Summary does describe a valid problem, but for now I cannot duplicate it.  In any case, xetex is the victim, not the culprit, and I am marking this bug invalid for now.