Chuck Robey wrote:

1) for the boehm-gc, I decided NOT to get the latest, so I just backed
off a little bit
to be conservative,  chose the 6.8 version, and found that it just
builds trivially
directly on OpenBSD, just configure and make.
Building newer versions of boehm-gc is easy. The hard part is having other ports detect it, and utilizing the libs on the Z! Try to build www/w3m and you will see what I mean! Better yet do a "make check" in the gc6.8 directory, and it will most certainly SEG FAULT. I have been able to patch 6.8 boehm-gc so that w3m will detect it on the Z, but for some reason boehm-gc is not playing properly. Without the patch you will get this when trying to build w3m:

#/usr/ports/www/w3m
#make
..snip..
./configure
..snip..
checking gc.h usability... yes
checking gc.h presence... yes
checking for gc.h... yes
checking for GC_init in -lgc... no
checking GC library location... /usr /usr/local /root
checking /usr... checking for GC_init in -lgc... no
checking /usr/local... checking for GC_init in -lgc... no
checking /root... checking for GC_init in -lgc... no
configure: error: libgc not found

gctest which is built in the gc6.8 dir during "make check" will core dump on the Z after about 5 minutes. During this time your Z will appear to become unresponsive, but it will soon return. (If you try this don't try and power off your Z or kill the process!) You should get the following output:

$ make check
Making check in doc
Making check in include
make  gctest test_cpp
`gctest' is up to date.
`test_cpp' is up to date.
make  check-TESTS
Segmentation fault (core dumped) FAIL: gctest
Segmentation fault (core dumped) FAIL: test_cpp
===================
2 of 2 tests failed
===================
*** Error code 1

If you want the core dumps I can send them to those who might be interested. Trying to run w3m, which I managed to build using the patched boehm-gc gives the following message:
Program received signal SIGSEGV, Segmentation fault
from /usr/local/lib/libgc.so.1.2

Jesse


Reply via email to