I maintain raspbian, a Derivative of Debian for the raspberry pi (and in principle other armv6 devices but in practice the raspberry pi is the only armv6 device anyone cares about. Note however I do not know any lisp.

Like Debian armhf raspbian uses the armhf dpkg architecture name and the hard float ABI but unlike Debian armhf we reduce the minimum CPU requirement to armv6 and we use "arm mode" instead of "thumb mode"*. Raspbian packages and debian armhf packages should be ABI compatible with debian armhf packages (we cannot rule out that there are corner cases where they are not) though obviously a mixed system will not run on a Pi.

We do our building in raspian chroots on armv7 hardware. This allows us to use packages from Debian armhf for breaking loops and allows us to use hardware that has the CPU and ram to build big packages in a semi-reasonable time while avoiding the pain of cross-compiling. It does have the advantage that occasional packages that mistakenly assume that they should build for the CPU version they are running on but that is not too hard to deal with,

A user reported that sbcl was not available in raspbian at . In his report he made a number of assertions.

"From version 1.2.0, SBCL supports ARM [1]."
This was sourced to an official announcement which agrees with the statement so is presumablly true.

"There are also people running SBCL on Raspberry Pi and Beagle Bone Black [2]." This was sourced to a reddit thread at http://www.reddit.com/r/lisp/comments/26lrnw/sbcl_120_released/ but the thread doesn't seem to confirm the statement, it only has people claiming it would be useful on the Pi and beaglebone black, not people saying they are actually using it on those devices.

"Debian has support for SBCL in testing (2:1.2.4-2)"
It is true that there is a package for SBCL in Debian jessie armhf and Debian sid armhf.

", but I've seen that same version in the Raspbian repository [3] but only for sbcl-doc and sbcl-source packages." This is true, it is quite common for source packages and architecture independent packages to be present in the raspbian repository without corresponding arch specific binary packages.

Based on these assertions I went over to check what our autobuilders thought was going on at http://buildd.raspbian.org/status/package.php?p=sbcl&suite=jessie-staging . I found the following.

sbcl build-depends on missing:
- sbcl (> 1:0.9.5.50-9)


Ok, we have a build-dependency loop to deal with, nothing too unusual there. So I did what I normally do to deal with loops, I tried a build in a mostly raspbian environment but with some packages from Debian armhf. Unfortunately it failed with.

//entering make-host-1.sh
//building cross-compiler, and doing first genesis
make-host-1.sh: 34: make-host-1.sh: /sbcl-1.2.4/stage1/bin/sbcl: not found
Command exited with non-zero status 1
0.00user 0.00system 0:00.00elapsed 0%CPU (0avgtext+0avgdata 568maxresident)k
0inputs+0outputs (0major+266minor)pagefaults 0swaps
debian/rules:45: recipe for target 'build-arch-stamp' failed
make: *** [build-arch-stamp] Error 1
dpkg-buildpackage: error: debian/rules build-arch gave error exit status 2
root@odroidu2:/sbcl-1.2.4#

A full log is available at https://bugs.launchpad.net/raspbian/+bug/1404194/+attachment/4284490/+files/sbcl.log (note: I forgot to log the output the first time so I ran dpkg-buildpackage again, this is the output of the second run, the error was the same though)

So this leaves me with a couple of questions.
1: Does sbcl support armv6 systems at all? or am I wasting my time here?
2: If sbcl is supposed to support armv6 systems sny idea what is going wrong in our build?

P.S. i'm currently trying a build as nonroot just in case this is one of those annoying packages that doesn't like to be built as root

_______________________________________________
pkg-common-lisp-devel mailing list
pkg-common-lisp-devel@lists.alioth.debian.org
http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-common-lisp-devel

Reply via email to