Revision as of 13:03, 17 April 2014 by Craig Peacock (Talk | contribs)

Cross Compiling Samba

Download the source and uncompress:

wget http://samba.org/samba/ftp/stable/samba-3.6.23.tar.gz
tar -xzf samba-3.6.23.tar.gz

And cross compile for ARM:

cd samba-3.6.23/source3
./autogen.sh
./configure --without-krb5 --without-ldap --without-ads \
  --disable-cups --enable-swat=no --with-winbind=no \
  --target=arm-linux-gnueabi --host=arm-linux-gnueabi \
  --prefix= --with-configdir=/etc \
  samba_cv_CC_NEGATIVE_ENUM_VALUES=yes \    
  libreplace_cv_HAVE_GETADDRINFO=no \
  ac_cv_file__proc_sys_kernel_core_pattern=yes
make
make install DESTDIR=/home/cpeacock/export/rootfs

Creating smb.conf

Create a Samba configuration file (smb.conf) and place it in /etc. Below is a minimal example configuration, sharing the home directories located in /home.

[global]
workgroup = WORKGROUP
netbios name = SAMBA_FS
[Home]
path = /home
writable = yes
comment = Home Directories

Starting Samba

Samba can be started using the following. smbd is the main Samba3 daemon and handles the SMB protocol. nmbd provides NetBIOS name server support.

/sbin/smbd -D
/sbin/nmbd -D

Download Pre-built Binaries

The link below contains a bzip2 tarball of Samba compiled for ARM: