Hi, I've recently tried upgrading from Chicken 4.6.3 to 4.7.0.
This is the build/packaging script that has worked for me with previous
builds:
# parallel builds are not supported..
export MAKEFLAGS="${MAKEFLAGS/-j?/}"
make PLATFORM=linux PREFIX=/usr
make PLATFORM=linux PREFIX=/usr DESTDIR=${pkgdir} install
install -D -m644 LICENSE ${pkgdir}/usr/share/licenses/${pkgname}/LICENSE
# should be a symbolic link not a copy otherwise ldconfig will cry
rm -f ${pkgdir}/usr/lib/libchicken.so
ln -s /usr/lib/libchicken.so.5 ${pkgdir}/usr/lib/libchicken.so
Everything builds and installs fine, and I've encountered no problems
yet with csi. However, if I try to compile even trivial scripts using
csc, I get an error:
$ cat hello.scm
(module test (hello greet)
(import scheme)
(define-syntax greet
(syntax-rules ()
((_ whom)
(begin
(display "Hello, ")
(display whom)
(display " !\n") ) ) ) )
(define (hello)
(greet "world") ) )
$ csc -s hello.scm
/usr/bin/ld: /usr/lib/libchicken.a(library-static.o): relocation R_X86_64_32S
against `.text' can not be used when making a shared object; recompile with
-fPIC
/usr/lib/libchicken.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
Error: shell command terminated with non-zero exit status 256: gcc hello.o -o
hello.so -shared -L"/usr/lib" -Wl,-R"/usr/lib" -lchicken -lm -ldl
I tried downgrading back to Chicken 4.6.3, starting with a fresh source
directory, and building Chicken 4.7.0 again but with first doing an:
CFLAGS="$CFLAGS -fPIC"
However, this doesn't make anything work better. And indeed the -fPIC seemed to
already be picked up in the first build. I saved a build log, in case it would
be useful to look at.
Any suggestions would be gratefully received. Thanks.
--
Jim Pryor
[email protected]
_______________________________________________
Chicken-users mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/chicken-users