This has been tested successfully on RH 9. YMMV.
/pub/spamassassin/RPMS/spamassassin-3.0.0-0.rc5.src.rpm (or whatever's newest, by date)and
perl-Digest-SHA1 perl-DateManip perl-URI perl-libwww-perl perl-Digest-HMAC
rpmbuild --rebuild perl-Net-DNS-0.46-1.src.rpm rpmbuild --rebuild spamassassin-3.0.0-0.rc5.src.rpmThis is where you will probably get some "failed dependencies" errors. That brings us to step...
perl-CPAN elinks ncftpInitialize CPAN:
perl -MCPAN -e shell;Follow prompts. When it finishes configuring itself, you will be at the cpan> prompt. Exit.
cpan -i bundlenamewhere bundlename is each of these:
Digest::MD5 Parse::Syslog Statistics::DistributionsIt will undoubtedly discover dependencies for these, and ask if you want to install them. Say yes. It will also probably ask if you want to update CPAN itself -- not a bad idea.
When they finally build, install them:
cd /usr/src/redhat/RPMS/i386 rpm -Uvh perl-Mail-SpamAssassin-3.0.0-0.rc5.i386.rpm spamassassin-3.0.0-0.rc5.i386.rpm spamassassin-tools-3.0.0-0.rc5.i386.rpmMore dependencies? You'll have to imagine my utter surprise. Rinse, lather, and repeat with redcarpet/cpan/kluge.net until it installs. If you exhaust all of those possibilities and it still whines, run the command with the "nodeps" option, like so:
rpm -Uvh --nodeps perl-Mail-SpamAssassin-3.0.0-0.rc5.i386.rpm spamassassin-3.0.0-0.rc5.i386.rpm spamassassin-tools-3.0.0-0.rc5.i386.rpmThis will force it to install regardless of what it thinks about dependencies.
spamassassin --lint -D 2>&1 | grep -i dnsIn the output, among other things, you should see
debug: is Net::DNS::Resolver available? yes debug: Net::DNS version: 0.46 debug: NS lookup of sourceforge.net succeeded => Dns available (set dns_available to hardcode) debug: is DNS available? 1If instead you get messages indicating a problem with DNS, reinstall perl-Net-DNS or upgrade the version.
If all is well, proceed with configuration details on http://www.whoopis.com/howtos/kill-spam.html and/or http://www.stearns.org/doc/spamassassin-setup.current.html.