Cyrus on Linksys NSLU2

Ken Murchison ken at oceana.com
Thu Feb 24 13:34:08 EST 2005


Ian G Batten wrote:

> I've compiled 2.2.12 on a Linksys NSLU2.  It appears to work --- I can
> rsync a mailbox on from a Sun and access it correctly.  I've also got
> Sendmail 8.13.3 built and awaiting a config file, so I can start
> delivering mail to the slug soonest.
> 
> I have real work for this, honest, and it's not just geekery: we want
> low-maintenance mail servers in our branch offices.

Kudos for getting Cyrus compiled, I never would have even considered 
building it on my slug!

Given the limited amount of memory on the slug, I don't think you're 
going to get very good performance with a reasonable number of 
concurrent connections, but I could be wrong.


> 
> I did the compilation actually on the slug, as building a
> cross-compilation environment faithful enough to handle a full-scale
> configure, especially given my preferred development environment being
> Solaris 10 on Sparc, seemed too much like hard work.
> 
> I had to hack a few bits and pieces to get it to build, notably
> xversion.sh (as perl isn't present, awk appears to be somewhat broken,
> printf is missing and echo doesn't have \n properly).  Obviously I
> haven't got perl, so I skipped the cyradm build.  
> 
> xversion.sh reads as follows:
> 
> #!/bin/sh
> echo "/* Generated automatically by xversion.sh */" > xversion.h
> echo "#define CYRUS_CVSDATE \"unknown\"" >> xversion.h
> 
> It loses versioning information, obviously.  I'll write a better
> solution in C when I have a chance.
> 
> Also, a `make clean' is a bit of a catastrophe, as some things are
> supplied in the source kit that are scrubbed by a clean and require perl
> to rebuild (imapopts, notably).
> 
> I used ipkg to install a whole stack of stuff: diffutils, the compilers,
> ssl, sasl, db and so on.  The slug I'm compiling and testing on has the
> following packages installed:
> 
> cpio crosstool-native-arch-bin crosstool-native-arch-inc
> crosstool-native-arch-lib crosstool-native-bin crosstool-native-inc
> crosstool-native-lib cyrus-sasl diffutils findutils ipkg less
> libc6-unslung libdb libgcc libipkg m4 make ncurses nfs-utils
> nslu2-linksys-libs ntpclient openssh openssl portmap rsync slingbox
> strace unslung-standard-rootfs wget zlib
> 
> Not all are required for the build, but I'm not about to start randomly
> removing packages and seeing if it'll still build!
> 
> The compilation was done with:
> 
> # CC=/opt/armeb/bin/armv5b-softfloat-linux-gcc export CC
> # CFLAGS=-O export CFLAGS
> # ./configure --build=armv5b-softfloat-linux \
>       --with-bdb-libdir=/opt/lib --with-bdb-incdir=/opt/include \
>       --without-perl --with-cyrus-user=mail --with-cyrus-group=mail \
>       --prefix=/opt/cyrus --with-cyrus-prefix=/opt/cyrus
> # make
> 
> I used mail:mail as the uid because it's there, and adding users into
> /etc/passed is painful on a slug.  /opt/cyrus isn't big enough (unless
> you're using non-standard partitioning) so I made it a symlink into
> /share/hdd/data/cyrus.  
> 
> ian
> 
> 
> 
> ---
> Cyrus Home Page: http://asg.web.cmu.edu/cyrus
> Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
> List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html
> 


-- 
Kenneth Murchison     Oceana Matrix Ltd.
Software Engineer     21 Princeton Place
716-662-8973 x26      Orchard Park, NY 14127
--PGP Public Key--    http://www.oceana.com/~ken/ksm.pgp
---
Cyrus Home Page: http://asg.web.cmu.edu/cyrus
Cyrus Wiki/FAQ: http://cyruswiki.andrew.cmu.edu
List Archives/Info: http://asg.web.cmu.edu/cyrus/mailing-list.html




More information about the Info-cyrus mailing list