Why are you writing this article?
- I have a small VPS box that didn’t have the memory to compile ZNC with Python/Perl/TCL support even without the ‘-pipe’ CFLAG.
- As a reminder to myself on cross compiling
- We’ll have a “Compile” and “Destination” machines (or virts, depending on your capabilities)
- Compile box best be discardable VM with a fresh install of Ubuntu 14.04, with more than 1GB of ram. I’m not sure how much more ram, but 1GB won’t cut it.
- We won’t be creating a package. This is an old school compile and .tar copy-install. Just a heads up if you don’t like this sort of thing
- Due to point above, compile prefix will be /opt/znc. I like a higher-degree of separation, which is why I use “/opt/znc” instead of just “/opt”.
- After compiling, we’ll create a separate user for ZNC and an upstart file to have ZNC run as a service via non-privileged user.
Assuming that this is a fresh install of Ubuntu 14.04 (server), run the following commands.
I recommend you do them 1-by-1 for maximum control.
Copy the tar “znc.tar.gz” from the Compile box to the Destination box
Set up the upstart script
You can now start your bouncer via:
It will also get started automatically with system reboot which you can test.
ZNC documentation is quite extensive, so I won’t dive deep into configuring it. Have fun!