Setup your raspberry pi by following the Getting Started Guide from www.raspberrypi.org
I use / recommend Raspbian Jessie Lite image.
Don't forget to active ssh access, or you have to do it directly on the pi.
Login to your pi
sudo apt-get update sudo apt-get upgrade sudo apt-get install cups
Download the driver from the Website you will need LPR printer driver & LPR printer driver
mkdir /tmp/printer_driver wget --directory-prefix=/tmp/printer_driver http://download.brother.com/welcome/dlf100419/hl1110lpr-3.0.1-1.i386.deb wget --directory-prefix=/tmp/printer_driver http://download.brother.com/welcome/dlf100421/hl1110cupswrapper-3.0.1-1.i386.deb
Don't install the driver now, we need to add the ability to use i386 architecture first.
This part is based / inspired from: https://www.lhinderberger.de/pi/2016/01/27/raspberry-pi-binary-x86-drivers.html - go there for more detailed informations about what we do here.
Edit /etc/apt/sources.list and /etc/apt/sources.list.d/raspi.list you need to add [arch=armhf] to the repo string
example:
deb [arch=armhf] http://archive.raspbian.org/raspbian jessie main contrib non-free
Now create a new file for i386 architecture: /etc/apt/sources.list.d/i386.list with following content.
deb [arch=i386] http://ftp.debian.org/debian/ jessie main contrib non-free deb [arch=i386] http://ftp.debian.org/debian/ jessie-updates main contrib non-free deb [arch=i386] http://security.debian.org/ jessie/updates main contrib non-free
Now comes the part where the magic happends
sudo dpkg --add-architecture i386 sudo apt-get update sudo apt-get install binfmt-support qemu-user sudo apt-get install libc6:i386
For more informations about the i386 point go to the orginal guide
sudo dpkg -i /tmp/printer_driver/hl1110lpr-3.0.1-1.i386.deb sudo dpkg -i /tmp/printer_driver/hl1110cupswrapper-3.0.1-1.i386.deb
You will get an error by install hl1110lpr-* but this is not really a problem, you get this error even when you print, but can just ignore it.
//ERROR: ld.so: object '/usr/lib/arm-linux-gnueabihf/libarmmem.so' from /etc/ld.so.preload cannot be preloaded (cannot open shared object file): ignored.//
If you have further informations how to fix this error message, let me know it.
Normaly you will have automatic created entrys by cups for the new printer during the installation, if not do it by your own.
Add user pi to lpadmin group
sudo usermod -a -G lpadmin pi
Edit cupsd.conf /etc/cups/cupsd.conf Replace Listen localhost:631 with Listen *:631
add Allow 192.168.178.* (Depends on your Network) to the Location blocks (Only if your want to access the webinterface from other hosts in your network)
If you want to share your new printer with windows clients without samba, you need to add a new Location for /printers.
<Location /printers> Order allow,deny Allow 192.168.178.* </Location>
now restart cups
/etc/init.d/cups restart
Add a new Network Printer by entering to following address: http://${IP-FROM-PI}:631/printers