[tlbuild] sparc-solaris: luatex SIGBUS in hnj_hyphenation

George N. White III gnwiii at gmail.com
Wed Jun 16 15:38:20 CEST 2010


On Tue, Jun 15, 2010 at 9:57 PM, Vladimir Volovich <vvv at vsu.ru> wrote:

> "GNW" == George N White writes:
>
>  GNW> The luatex that crashed was installed normally from one of the
>  GNW> tlpretest mirrors.

The jobs runs normally using gcc-compiled luatex of last week:

This is LuaTeX, Version beta-0.60.1-2010061513 (TeX Live 2010) (rev 3685)
ConTeXt  ver: 2010.05.24 13:05 MKIV  fmt: 2010.6.15  int: english/english


> interesting. as we know, sparc-solaris/luatex which i've built was
> unusable because it was not able to read any input. since then the bug
> was identified and fixed in the sources, but i did not re-submit a
> working binary yet (because i was waiting for the source tree to stabilize).
>
> so i wonder how did this same luatex managed to produce some other
> behavior. perhaps, it was running in lua mode, rather than in tex mode?

Quite possibly -- ConTeXt originally used a lot of perl scripts but for MkIV
those are replaced by lua.

I'm using my old svn snapshot (has to be carried around firewall on USB
stick) and I haven't had time to update the stick.

My latest attempt to build failed:

CC=/opt/SUNWspro/bin/cc
CXX=/opt/SUNWspro/bin/CC
export CC CXX
./Build --debug --disable-xetex --disable-xdvipdfmx
[...]
/bin/bash ./libtool --tag=CXX   --mode=link /opt/SUNWspro/bin/CC  -g
-export-dynamic  -o luatex luatex-luatex.o libluatex.a libff.a
libluamisc.a libluasocket.a liblua51.a
X/Build/source/Work/libs/zziplib/libzzip.a
X/Build/source/Work/libs/libpng/libpng.a X/Build/source/Work/libs/zlib/libz.a
X/Build/source/Work/libs/xpdf/libxpdf.a
X/Build/source/Work/libs/obsdcompat/libopenbsd-compat.a libmd5.a
libmplib.a lib/lib.a X/Build/source/Work/texk/kpathsea/libkpathsea.la
-lsocket -lresolv -lnsl -lrt -lm
libtool: link: /opt/SUNWspro/bin/CC -g -o luatex luatex-luatex.o
libluatex.a libff.a libluamisc.a libluasocket.a
liblua51.a
X/Build/source/Work/libs/zziplib/libzzip.a
X/Build/source/Work/libs/libpng/libpng.a X/Build/source/Work/libs/zlib/libz.a
X/Build/source/Work/libs/xpdf/libxpdf.a
X/Build/source/Work/libs/obsdcompat/libopenbsd-compat.a libmd5.a
libmplib.a lib/lib.a
X/Build/source/Work/texk/kpathsea/.libs/libkpathsea.a -lsocket
-lresolv -lnsl -lrt -lm
Undefined                       first referenced
 symbol                             in file
__zzip_aligned4
X/Build/source/Work/libs/zziplib/libzzip.a(zip.o)

This seems to be a common SS12 problem, but there are multiple
theories: 1) optimization is needed to
remove dead code, and 2) use c99 or CC to compile.

1)  enable automatic inlining with -x04

          "If you specify -g and the optimization level is -x04,
          the compiler provides best-effort symbolic information
          with full optimization." -- man cc

    <http://www.gossamer-threads.com/lists/clamav/users/21757>

also  <http://forums.sun.com/thread.jspa?threadID=5388962>

"Removing dead code is an optimization" so any optimization will work

$ make CFLAGS='-g -O0' zip.o
source='zziplib-0.13.58/zzip/zip.c' object='zip.o' libtool=no \
        DEPDIR=.deps depmode=none /bin/bash
../../../libs/zziplib/../../build-aux/depcomp \
        /opt/SUNWspro/bin/cc -DHAVE_CONFIG_H -I.
-I../../../libs/zziplib -Iinclude
-I../../../libs/zziplib/zziplib-0.13.58
-IX/Build/source/Work/libs/zlib/include -D_USE_MMAP   -g -O0 -c -o
zip.o `test -f 'zziplib-0.13.58/zzip/zip.c' || echo
'../../../libs/zziplib/'`zziplib-0.13.58/zzip/zip.c
emerald2:zziplib gwhite$ nm zip.o
00000000 R $XBn4vAOY8MGMWNX.zzip_get_default_ext.ext
00000000 r Drodata.rodata
         U __zzip_aligned4
00001768 t __zzip_dir_parse
[...]

but,
$ make CFLAGS='-g -xO4' zip.o
source='zziplib-0.13.58/zzip/zip.c' object='zip.o' libtool=no \
        DEPDIR=.deps depmode=none /bin/bash
../../../libs/zziplib/../../build-aux/depcomp \
        /opt/SUNWspro/bin/cc -DHAVE_CONFIG_H -I.
-I../../../libs/zziplib -Iinclude
-I../../../libs/zziplib/zziplib-0.13.58
-I/export/home/gwhite/texlive/tlsvn/Build/source/Work/libs/zlib/include
-D_USE_MMAP   -g -xO4 -c -o zip.o `test -f
'zziplib-0.13.58/zzip/zip.c' || echo
'../../../libs/zziplib/'`zziplib-0.13.58/zzip/zip.c
emerald2:zziplib gwhite$ nm zip.o
00000000 R $XBn4vAOw9MGMmVX.zzip_get_default_ext.ext
00000000 r Drodata.rodata
00000a08 t __zzip_dir_parse


2) using c99 the build fails:

CC=/opt/SUNWspro/bin/c99
CXX=/opt/SUNWspro/bin/CC
CFLAGS="-O0 -g"
export CC CXX CFLAGS
./Build --debug --disable-xetex --disable-xdvipdfmx
[...]
Making all in texk/ptexenc
source='ptexenc.c' object='libptexenc_la-ptexenc.lo' libtool=yes \
DEPDIR=.deps depmode=none /bin/bash
../../../texk/ptexenc/../../build-aux/depcomp \
/bin/bash ./libtool  --tag=CC   --mode=compile /opt/SUNWspro/bin/c99
-DHAVE_CONFIG_H -I. -I../../../texk/ptexenc -I./ptexenc
-IX/Build/source/Work/texk -IX/Build/source/texk -DMAKE_KPSE_DLL   -g
-c -o libptexenc_la-ptexenc.lo `test -f 'ptexenc.c' || echo
'../../../texk/ptexenc/'`ptexenc.c
libtool: compile:  /opt/SUNWspro/bin/c99 -DHAVE_CONFIG_H -I.
-I../../../texk/ptexenc -I./ptexenc -IX/Build/source/Work/texk
-IX/Build/source/texk -DMAKE_KPSE_DLL -g -c
../../../texk/ptexenc/ptexenc.c -o libptexenc_la-ptexenc.o
"../../../texk/ptexenc/ptexenc.c", line 55: warning: implicit function
declaration: strcasecmp
"../../../texk/ptexenc/ptexenc.c", line 305: warning: implicit
function declaration: fileno
"../../../texk/ptexenc/ptexenc.c", line 606: undefined symbol: PATH_MAX
c99: acomp failed for ../../../texk/ptexenc/ptexenc.c
*** Error code 1
make: Fatal error: Command failed for target `libptexenc_la-ptexenc.lo'
Current working directory X/Build/source/Work/texk/ptexenc

The full compile with "-g -xO4" is running now -- results later.



-- 
George N. White III <aa056 at chebucto.ns.ca>
Head of St. Margarets Bay, Nova Scotia



More information about the tlbuild mailing list