CD Burning in general is supported in most operating systems right out of the box.
However, if you’re looking for a free alternative to features which are otherwise considered “premium”, like burning hybrid CD’s that work on Windows and Mac there are freely available tools licensed under GNU which have everything you need.
Consider the steps below. Simple (if you follow the steps and don’t have hiccups), free (as long as GNU stands) and error proof (so long as you use the precompiled binaries of stable versions and don’t stray to bleeding edge BETAs or compiling your own :P).
Download and install Cygwin.
During install process, towards the end where you select packages, select cdrtools/cdrecord/mkisofs
For (Redhat) Linux:
yum install cdrtools OR yum install cdrecord THEN
yum install mkisofs
For (Debian) Linux:
apt-get install cdrtools OR apt-get install cdrecord THEN
apt-get install mkisofs
Prep a folder that will be burned to the disc. Make sure the contents will fit and verify the file structure is correct.
If you want to literally burn the folder itself, don’t “cd” into that directory. If you are burning the contents of the folder, you will “cd” into the directory and specify “.” as the target name instead of the folder name.
In Windows start up Cygwin, on Mac open the darwin terminal window, on linux open your terminal window.
Note the numerical identifier for your burner drive. This is what you will specify for the “dev” parameter later.
“cd” into the directory containing the files to burn then run:
mkisofs -o isoname.iso -r -J -hfs .
Then from within the same directory, burn the iso that you created:
cdrecord dev=4,0,0 -v isoname.iso
That’s it! Let ‘er rip! ;)
Note: genisoimage is similar to mkisofs, but I have not used it extensively and cannot verify if functionality is exactly the same.