pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Wyrd broken on alpha



On 2008-08-07 10:08, Eric Schnoebelen wrote:
> - On Wed, Aug 06, 2008 at 08:35:25PM +0200, Christian A. Mongeau Ospina wrote:
> - > I requested to the SysAdmin at http://freeshell.org if it was
> - > possible to have Wyrd installed on our system. He told me that he
> - > tried to install it but seems to be broken on alpha.
> - 
> - Does anyone know if lang/ocaml works on alpha?
> 
> It appears to build, but it fails on installation.. (I built it
> trying to reproduce Christian's error.)

Eric and Martin, thanks for your attention.

About OCaml working on alpha, I can only say that we have it
installed (NetBSD 2.1.0_STABLE on alpha):

$ ls /sys/pkg/bin/ocaml
ocaml       ocamlcp       ocamldep      ocamllex     ocamlmktop
ocamlrun    ocamlc        ocamldebug    ocamldoc     ocamlmklib 
ocamlprof   ocamlyacc

I don't know *how* well it is working, though. If you give me some
hints on how to test it, i'd be happy to do it.

Back to wyrd, I tried to build it. Here is what I get (wyrd 1.4.4;
the current pkgsrc is 1.4.1 rev1):

#### ./configure ####

$ ./configure --prefix=/tmp/pkgtest CPPFLAGS=-I/usr/pkg/include\
   LDFLAGS=-L/usr/pkg/lib --with-ncurses
checking for ocamlc... ocamlc
ocaml version is 3.09.1
ocaml library path is /usr/pkg/lib/ocaml
checking for ocamlopt... no
configure: WARNING: Cannot find ocamlopt; bytecode compilation only.
checking for ocamlc.opt... no
checking for ocamldep... ocamldep
checking for ocamllex... ocamllex
checking for ocamllex.opt... no
checking for ocamlyacc... ocamlyacc
checking platform... not Win32
checking for gcc... 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 gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for working ncurses library... found in -lncurses
checking for ncurses term.h... found in <term.h>
checking for remind... /usr/pkg/bin/remind
checking remind version... 03.00.24
configure: WARNING: Wyrd requires Remind version 03.01.00 or greater.
configure: creating ./config.status
config.status: creating Makefile
config.status: creating install.ml

#### END ./configure ####

#### make ####

$ gmake
ocamlc -c locale_wrap.c
ocamlc -c -g -I ./curses curses/curses.mli
ocamlc -c -g -I ./curses curses/curses.ml
cd curses && ocamlc -ccopt "-I/usr/pkg/include -DPACKAGE_NAME=\"\" \
   -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" \
   -DPACKAGE_BUGREPORT=\"\" -DCURSES_HEADER=\<ncurses.h\> \
   -DCURSES_TERM_H=\<term.h\> -g -O2 -Wall -fPIC -DPIC" -c ml_curses.c
ocamlc -c -pp camlp4o -g -I ./curses install.ml
echo "let version = \""1.4.4"\"" > version.ml
echo "let date = \""`date`"\"" >> version.ml
ocamlc -c -pp camlp4o -g -I ./curses version.ml
ocamlc -c -pp camlp4o -g -I ./curses utility.ml
ocamlc -c -pp camlp4o -g -I ./curses rcfile.ml
ocamlc -c -pp camlp4o -g -I ./curses time_lang.ml
ocamlc -c -pp camlp4o -g -I ./curses interface.ml
ocamlc -c -pp camlp4o -g -I ./curses cal.ml
ocamlc -c -pp camlp4o -g -I ./curses remind.ml
ocamlc -c -pp camlp4o -g -I ./curses interface_draw.ml
ocamlc -c -pp camlp4o -g -I ./curses interface_main.ml
ocamlc -c -pp camlp4o -g -I ./curses main.ml
ocamlc -pp camlp4o -g -I ./curses -custom -cclib
   '-L/usr/pkg/lib -lncurses -lm' \
   -o wyrd.byte curses/curses.cmo curses/ml_curses.o locale_wrap.o str.cma \
   unix.cma install.cmo version.cmo utility.cmo rcfile.cmo time_lang.cmo\
   interface.cmo cal.cmo remind.cmo interface_draw.cmo interface_main.cmo\
   locale.cmo main.cmo

#### END make ####

#### make install ####

$ gmake install
mkdir -p //tmp/pkgtest/bin
mkdir -p //tmp/pkgtest/etc
mkdir -p //tmp/pkgtest/share/man/man1
mkdir -p //tmp/pkgtest/share/man/man5
install -m 644 wyrdrc //tmp/pkgtest/etc
install -m 644 doc/wyrd.1 //tmp/pkgtest/share/man/man1/wyrd.1
install -m 644 doc/wyrdrc.5 //tmp/pkgtest/share/man/man5/wyrdrc.5
install -m 755 wyrd.byte //tmp/pkgtest/bin 
mv //tmp/pkgtest/bin/wyrd.byte //tmp/pkgtest/bin/wyrd

#### END make install ####

Now, when I run wyrd I get a "Memory fault (core dumped)".

Not an expert, but I think the following could help:

#### gdb wyrd wyrd.core ###

$ gdb wyrd wyrd.core
GNU gdb 5.3nb1
[...]
This GDB was configured as "alpha--netbsd"...
Core was generated by `wyrd'.
Program terminated with signal 11, Segmentation fault.
Reading symbols from /usr/libexec/ld.elf_so...done.
Loaded symbols for /usr/libexec/ld.elf_so
Reading symbols from /usr/pkg/lib/libncurses.so.5...done.
Loaded symbols for /usr/pkg/lib/libncurses.so.5
Reading symbols from /usr/lib/libm.so.0...done.
Loaded symbols for /usr/lib/libm.so.0
Reading symbols from /usr/lib/libcurses.so.6...done.
Loaded symbols for /usr/lib/libcurses.so.6
Reading symbols from /usr/pkg/lib/libpthread.so.20...done.
Loaded symbols for /usr/pkg/lib/libpthread.so.20
Reading symbols from /usr/lib/libc.so.12...done.
Loaded symbols for /usr/lib/libc.so.12
#0  0x0000000160183a7c in pth_key_getdata () from /usr/pkg/lib/libpthread.so.20

#### END gdb wyrd wyrd.core ####

#### gdb ####

$ gdb wyrd
GNU gdb 5.3nb1
[...]
This GDB was configured as "alpha--netbsd"...
(gdb) run
Starting program: /tmp/pkgtest/bin/wyrd

Program received signal SIGUSR1, User defined signal 1.
0x00000001601d829c in _sys___sigsuspend14 () from /usr/lib/libc.so.12
(gdb) x 0x00000001601d829c
0x1601d829c <_sys___sigsuspend14+8>:    0xc3a00000
[...]

#### END gdb ####

If there's something I can do, please let me know.

Best regards.

Chris

-- 
chr
SDF Public Access UNIX System - http://sdf.lonestar.org


Home | Main Index | Thread Index | Old Index