You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@spamassassin.apache.org by Cecil Westerhof <Ce...@decebal.nl> on 2010/04/02 10:30:04 UTC

Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

I just updated my SpamAssassin to 3.3.1. Maybe not the correct place to
mention it, but I find the
    perl -MCPAN -e shell
not working very well. There was a message that the Perl version 5.8.6
was outdated, but I only saw it, because I was watching the output. With
the very big stream of output, it was something that is easily
overlooked. I had also to install a lot of modules by hand.

After the update to Perl 5.10.1 I get the message:
    Terminal does not support AddHistory.
and cursor up for a previous given command does not work anymore. Very
annoying. :-{

But those are things that are annoying, but not more. But when I now
use:
    sa-learn --dump magic
I get:
    ERROR: Bayes dump returned an error, please re-run with -D for more information
so I used:
    sa-learn -D --dump magic
which ends with:
    apr  2 10:02:19.394 [7291] dbg: plugin: Mail::SpamAssassin::Plugin::Bayes=HASH(0x8c63370) implements 'learner_is_scan_available', priority 0
    apr  2 10:02:19.396 [7291] dbg: bayes: DB_File module not installed, cannot use bayes
    apr  2 10:02:19.398 [7291] dbg: config: score set 1 chosen.
    apr  2 10:02:19.399 [7291] dbg: sa-learn: spamtest initialized
    apr  2 10:02:19.403 [7291] dbg: plugin: Mail::SpamAssassin::Plugin::Bayes=HASH(0x8c63370) implements 'learner_dump_database', priority 0
    apr  2 10:02:19.405 [7291] dbg: bayes: DB_File module not installed, cannot use bayes
    apr  2 10:02:19.407 [7291] dbg: plugin: Mail::SpamAssassin::Plugin::Bayes=HASH(0x8c63370) implements 'learner_close', priority 0
    ERROR: Bayes dump returned an error, please re-run with -D for more information

So I would think my problem is that I need to install DB_File. But when
I do:
    install DB_File
I get:
    Parsing config.in...
    Looks Good.
    Checking if your kit is complete...
    Looks good
    Writing Makefile for DB_File
    Could not read '/root/.cpan/build/DB_File-1.820-0nX4DL/META.yml'. Falling back to other methods to determine prerequisites
    cp DB_File.pm blib/lib/DB_File.pm
    AutoSplitting blib/lib/DB_File.pm (blib/lib/auto/DB_File)
    cc -c  -I/usr/local/BerkeleyDB/include -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.820\" -DXS_VERSION=\"1.82\" -fPIC "-I/usr/local/lib/perl5/5.10.1/i686-linux/CORE"  -D_NOT_CORE  -DmDB_Prefix_t=size_t -DmDB_Hash_t=u_int32_t   version.c
    version.c:30:16: db.h: No such file or directory
    make: *** [version.o] Error 1
      PMQS/DB_File-1.820.tar.gz
      /usr/bin/make -- NOT OK
    Warning (usually harmless): 'YAML' not installed, will not store persistent state
    Running make test
      Can't test without successful make
    Running make install
      Make had returned bad status, install seems impossible
    Failed during this command:
     PMQS/DB_File-1.820.tar.gz                    : make NO

So it looks like I am missing a file version.c. What is happening here
and what can I do about it?

Also with the script I use to run sa-update I created a log file. When I
do:
    grep 'not installed\|warning' sa-update.log
I get:
    Apr  2 02:04:07.871 [4447] dbg: diag: [...] module not installed: DB_File ('require' failed)
    Apr  2 02:04:07.872 [4447] dbg: diag: [...] module not installed: Razor2::Client::Agent ('require' failed)
    Apr  2 02:04:07.873 [4447] dbg: diag: [...] module not installed: Net::Ident ('require' failed)
    Apr  2 02:04:20.519 [4447] dbg: config: warning: score set for non-existent rule SHORTCIRCUIT
    Apr  2 02:04:20.522 [4447] dbg: config: warning: score set for non-existent rule SUBJ_RE_NUM
    Apr  2 02:04:20.523 [4447] dbg: config: warning: score set for non-existent rule FM_VIAGRA_SPAM1114
    Apr  2 02:04:20.529 [4447] dbg: config: warning: score set for non-existent rule AXB_HELO_LH_HOME
    Apr  2 02:04:20.533 [4447] dbg: config: warning: score set for non-existent rule ACCESSDB

The first is the same as with sa-learn, but not fatal.

When I give:
    i Razor2::Client::Agent
I get:
    No objects found of any type for argument Razor2::Client::Agent

When I give:
    install Net::Ident
it ends with:
    Checking for Apache.pm... not found
    Writing Makefile for Net::Ident
    cp Ident.pm blib/lib/Net/Ident.pm
    Manifying blib/man3/Net::Ident.3
      JPC/Net-Ident-1.20.tar.gz
      /usr/bin/make -- OK
    Warning (usually harmless): 'YAML' not installed, will not store persistent state
    Running make test
    PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
    t/0use.t .... Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
    t/0use.t .... ok
    t/apache.t .. Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
    t/apache.t .. skipped: (no reason given)
    t/compat.t .. Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
    t/compat.t .. skipped: (no reason given)
    t/Ident.t ... Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
    t/Ident.t ... Failed 3/7 subtests

    Test Summary Report
    -------------------
    t/Ident.t (Wstat: 0 Tests: 7 Failed: 3)
      Failed tests:  1-3
    Files=4, Tests=8, 123 wallclock secs ( 0.33 usr  0.05 sys +  3.00 cusr  0.56 csys =  3.94 CPU)
    Result: FAIL
    Failed 1/4 test programs. 3/8 subtests failed.
    make: *** [test_dynamic] Error 255
      JPC/Net-Ident-1.20.tar.gz
      /usr/bin/make test -- NOT OK
    //hint// to see the cpan-testers results for installing this module, try:
      reports JPC/Net-Ident-1.20.tar.gz
    Warning (usually harmless): 'YAML' not installed, will not store persistent state
    Running make install
      make test had returned bad status, won't install without force
    Failed during this command:
     JPC/Net-Ident-1.20.tar.gz                    : make_test NO

What is happening here?

And what about the warnings avout 'score set for non-existent rule', is
this something to worry about?

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Cecil Westerhof <Ce...@decebal.nl>.
Mark Martinec <Ma...@ijs.si> writes:

> On Friday 02 April 2010 15:31:39 Cecil Westerhof wrote:
>> > According to that Apache wikipage
>> > Net::Ident is required by SA.
>
> Net::Ident is NOT required by SA, it is entirely optional
> (unless you want to use --auth-ident option to spamd).
> And you'd better NOT use it, unless you have full control
> over each client's (spamc) computer and users there are
> unprivileged.

The 'problem' is that you get an warning about it. Because I like to
check for errors, but do not want to get unnecessary messages I
installed it. Maybe sa should not give warnings if it does not need it?

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Mark Martinec <Ma...@ijs.si>.
On Friday 02 April 2010 15:31:39 Cecil Westerhof wrote:
> > According to that Apache wikipage
> > Net::Ident is required by SA.

Net::Ident is NOT required by SA, it is entirely optional
(unless you want to use --auth-ident option to spamd).
And you'd better NOT use it, unless you have full control
over each client's (spamc) computer and users there are
unprivileged.

  Mark

Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Cecil Westerhof <Ce...@decebal.nl>.
Jari Fredriksson <ja...@iki.fi> writes:

> On 2.4.2010 14:31, Cecil Westerhof wrote:
>> Jari Fredriksson <ja...@iki.fi> writes:
>> 
>>> On 2.4.2010 14:02, Cecil Westerhof wrote:
>>>>
>>>> My problem with Net::Ident did not go away.
>>>>
>>>
>>> I might try "force install Net::Ident" and then prepare to format my HD :(
>> 
>> It looks like it does not pose a problem. Is it an important module, or
>> can I live without it?
>> 
>
> Take a look: http://wiki.apache.org/spamassassin/NetIdentPrototype
>
> It seems that it can be forced to install, and while this error stays,
> SA should be ok.
>
> I have Apache.pm though, two different instances:
>
>    /usr/local/lib/perl/5.10.0/DBI/ProfileDumper/Apache.pm
>    /usr/share/perl/5.10.0/CGI/Apache.pm
>
> I don't know if the Apache.pm is the key to keep Ident happy, or not.
>
> You can try and install CGI::Apache and/or  DBI::ProfileDumper::Apache
> (I have those), maybe then...

Does not make a difference for Net::Ident


> Or just force install Net::Ident. According to that Apache wikipage
> Net::Ident is required by SA.

Did this. Now I only have to install Razor2.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Jari Fredriksson <ja...@iki.fi>.
On 2.4.2010 14:31, Cecil Westerhof wrote:
> Jari Fredriksson <ja...@iki.fi> writes:
> 
>> On 2.4.2010 14:02, Cecil Westerhof wrote:
>>>
>>> My problem with Net::Ident did not go away.
>>>
>>
>> I might try "force install Net::Ident" and then prepare to format my HD :(
> 
> It looks like it does not pose a problem. Is it an important module, or
> can I live without it?
> 

Take a look: http://wiki.apache.org/spamassassin/NetIdentPrototype

It seems that it can be forced to install, and while this error stays,
SA should be ok.

I have Apache.pm though, two different instances:

   /usr/local/lib/perl/5.10.0/DBI/ProfileDumper/Apache.pm
   /usr/share/perl/5.10.0/CGI/Apache.pm

I don't know if the Apache.pm is the key to keep Ident happy, or not.

You can try and install CGI::Apache and/or  DBI::ProfileDumper::Apache
(I have those), maybe then...

Or just force install Net::Ident. According to that Apache wikipage
Net::Ident is required by SA.

-- 
http://www.iki.fi/jarif/

Always do right.  This will gratify some people and astonish the rest.
		-- Mark Twain


Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Cecil Westerhof <Ce...@decebal.nl>.
Jari Fredriksson <ja...@iki.fi> writes:

> On 2.4.2010 14:02, Cecil Westerhof wrote:
>> 
>> My problem with Net::Ident did not go away.
>> 
>
> I might try "force install Net::Ident" and then prepare to format my HD :(

It looks like it does not pose a problem. Is it an important module, or
can I live without it?

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Jari Fredriksson <ja...@iki.fi>.
On 2.4.2010 14:02, Cecil Westerhof wrote:
> 
> My problem with Net::Ident did not go away.
> 

I might try "force install Net::Ident" and then prepare to format my HD :(

It has worked sometimes, and never failed. But I have not done it too often.

Installing from CPAN can be pain.

-- 
http://www.iki.fi/jarif/

Always do right.  This will gratify some people and astonish the rest.
		-- Mark Twain


Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Cecil Westerhof <Ce...@decebal.nl>.
Cecil Westerhof <Ce...@decebal.nl> writes:

>> In CPAN, you might want to try at least
>>
>>    install Bundle::CPAN
>
> I'll do this. Will properly take some time, because it is quit an old
> system.
>
>
>> and if that does not install YAML and LWPm then
>>
>>    install YAML
>>    install LWP

Where already installed with Bundle::CPAN.

My problem with Net::Ident did not go away.

Cursor up/down/left/right works again. :-D

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Cecil Westerhof <Ce...@decebal.nl>.
Jari Fredriksson <ja...@iki.fi> writes:

> You instanlled perl from cpan, and propably removed the earlier, package
> managed version of perl?

No, I downloaded the sources and made Perl from source. The system has a
quite old distribution, so it was impossible to install a package
managed version.


> Now you need to install ALL perl packages that are missing and that were
> installed by your OS package manager earlier.
>
> DB_File propably needs some kind of "dev"-package for Berkeley DB (it
> needs db.h and the libraries).

That was the problem and I already did this and sa-learn works again.


> What comes to SpamAssassin, you probably need to look out all
> prerequisities, and reinstall them thru CPAN, if not with your package
> manager.
>
> In CPAN, you might want to try at least
>
>    install Bundle::CPAN

I'll do this. Will properly take some time, because it is quit an old
system.


> and if that does not install YAML and LWPm then
>
>    install YAML
>    install LWP

I'll do this also.


> It usually is bad practise to install perl thru CPAN and bypassing own
> package management. You may now be dependent on CPAN on all your Perl
> stuff. I have been there, done that. Now trying to stick with distro
> Perl, and upgrade distro, if Perl gets old.

I will make sure this will be done.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof

Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Jari Fredriksson <ja...@iki.fi>.
On 2.4.2010 11:30, Cecil Westerhof wrote:
> I just updated my SpamAssassin to 3.3.1. Maybe not the correct place to
> mention it, but I find the
>     perl -MCPAN -e shell
> not working very well. There was a message that the Perl version 5.8.6
> was outdated, but I only saw it, because I was watching the output. With
> the very big stream of output, it was something that is easily
> overlooked. I had also to install a lot of modules by hand.
>
> After the update to Perl 5.10.1 I get the message:
>     Terminal does not support AddHistory.
> and cursor up for a previous given command does not work anymore. Very
> annoying. :-{
>
> But those are things that are annoying, but not more. But when I now
> use:
>     sa-learn --dump magic
> I get:
>     ERROR: Bayes dump returned an error, please re-run with -D for
more information
> so I used:
>     sa-learn -D --dump magic
> which ends with:
>     apr  2 10:02:19.394 [7291] dbg: plugin:
Mail::SpamAssassin::Plugin::Bayes=HASH(0x8c63370) implements
'learner_is_scan_available', priority 0
>     apr  2 10:02:19.396 [7291] dbg: bayes: DB_File module not
installed, cannot use bayes
>     apr  2 10:02:19.398 [7291] dbg: config: score set 1 chosen.
>     apr  2 10:02:19.399 [7291] dbg: sa-learn: spamtest initialized
>     apr  2 10:02:19.403 [7291] dbg: plugin:
Mail::SpamAssassin::Plugin::Bayes=HASH(0x8c63370) implements
'learner_dump_database', priority 0
>     apr  2 10:02:19.405 [7291] dbg: bayes: DB_File module not
installed, cannot use bayes
>     apr  2 10:02:19.407 [7291] dbg: plugin:
Mail::SpamAssassin::Plugin::Bayes=HASH(0x8c63370) implements
'learner_close', priority 0
>     ERROR: Bayes dump returned an error, please re-run with -D for
more information
>
> So I would think my problem is that I need to install DB_File. But when
> I do:
>     install DB_File
> I get:
>     Parsing config.in...
>     Looks Good.
>     Checking if your kit is complete...
>     Looks good
>     Writing Makefile for DB_File
>     Could not read '/root/.cpan/build/DB_File-1.820-0nX4DL/META.yml'.
Falling back to other methods to determine prerequisites
>     cp DB_File.pm blib/lib/DB_File.pm
>     AutoSplitting blib/lib/DB_File.pm (blib/lib/auto/DB_File)
>     cc -c  -I/usr/local/BerkeleyDB/include -fno-strict-aliasing -pipe
-I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2
-DVERSION=\"1.820\" -DXS_VERSION=\"1.82\" -fPIC
"-I/usr/local/lib/perl5/5.10.1/i686-linux/CORE"  -D_NOT_CORE
-DmDB_Prefix_t=size_t -DmDB_Hash_t=u_int32_t   version.c
>     version.c:30:16: db.h: No such file or directory
>     make: *** [version.o] Error 1
>       PMQS/DB_File-1.820.tar.gz
>       /usr/bin/make -- NOT OK
>
> What is happening here?
>
> And what about the warnings avout 'score set for non-existent rule', is
> this something to worry about?
>

You instanlled perl from cpan, and propably removed the earlier, package
managed version of perl?

Now you need to install ALL perl packages that are missing and that were
installed by your OS package manager earlier.

DB_File propably needs some kind of "dev"-package for Berkeley DB (it
needs db.h and the libraries).

What comes to SpamAssassin, you probably need to look out all
prerequisities, and reinstall them thru CPAN, if not with your package
manager.

In CPAN, you might want to try at least

   install Bundle::CPAN

and if that does not install YAML and LWPm then

   install YAML
   install LWP

It usually is bad practise to install perl thru CPAN and bypassing own
package management. You may now be dependent on CPAN on all your Perl
stuff. I have been there, done that. Now trying to stick with distro
Perl, and upgrade distro, if Perl gets old.

-- 
http://www.iki.fi/jarif/

Q:	Why do firemen wear red suspenders?
A:	To conform with departmental regulations concerning uniform dress.


Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Jari Fredriksson <ja...@iki.fi>.
On 2.4.2010 14:14, Cecil Westerhof wrote:
> Most of my problems where solved by installing db-dev abd running
> 'install Bundle::CPAN'. But some problems remain.
> 
> 
>> When I give:
>>     i Razor2::Client::Agent
>> I get:
>>     No objects found of any type for argument Razor2::Client::Agent
> 
> Is the same.

Download Vipul's Razor and compile from source:
http://razor.sourceforge.net/

> 
> 
>> When I give:
>>     install Net::Ident
>> it ends with:
>>     Checking for Apache.pm... not found

force install Net::Ident

-- 
http://www.iki.fi/jarif/

Always do right.  This will gratify some people and astonish the rest.
		-- Mark Twain


Re: Some problems after update to SpamAssassin 3.3.1 and Perl 5.10.1

Posted by Cecil Westerhof <Ce...@decebal.nl>.
Most of my problems where solved by installing db-dev abd running
'install Bundle::CPAN'. But some problems remain.

Cecil Westerhof <Ce...@decebal.nl> writes:

> Also with the script I use to run sa-update I created a log file. When I
> do:
>     grep 'not installed\|warning' sa-update.log
> I get:
>     Apr  2 02:04:07.871 [4447] dbg: diag: [...] module not installed: DB_File ('require' failed)
>     Apr  2 02:04:07.872 [4447] dbg: diag: [...] module not installed: Razor2::Client::Agent ('require' failed)
>     Apr  2 02:04:07.873 [4447] dbg: diag: [...] module not installed: Net::Ident ('require' failed)
>     Apr  2 02:04:20.519 [4447] dbg: config: warning: score set for non-existent rule SHORTCIRCUIT
>     Apr  2 02:04:20.522 [4447] dbg: config: warning: score set for non-existent rule SUBJ_RE_NUM
>     Apr  2 02:04:20.523 [4447] dbg: config: warning: score set for non-existent rule FM_VIAGRA_SPAM1114
>     Apr  2 02:04:20.529 [4447] dbg: config: warning: score set for non-existent rule AXB_HELO_LH_HOME
>     Apr  2 02:04:20.533 [4447] dbg: config: warning: score set for non-existent rule ACCESSDB
>
> The first is the same as with sa-learn, but not fatal.

Is solved.


> When I give:
>     i Razor2::Client::Agent
> I get:
>     No objects found of any type for argument Razor2::Client::Agent

Is the same.


> When I give:
>     install Net::Ident
> it ends with:
>     Checking for Apache.pm... not found
>     Writing Makefile for Net::Ident
>     cp Ident.pm blib/lib/Net/Ident.pm
>     Manifying blib/man3/Net::Ident.3
>       JPC/Net-Ident-1.20.tar.gz
>       /usr/bin/make -- OK
>     Warning (usually harmless): 'YAML' not installed, will not store persistent state
>     Running make test
>     PERL_DL_NONLAZY=1 /usr/local/bin/perl "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t
>     t/0use.t .... Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
>     t/0use.t .... ok
>     t/apache.t .. Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
>     t/apache.t .. skipped: (no reason given)
>     t/compat.t .. Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
>     t/compat.t .. skipped: (no reason given)
>     t/Ident.t ... Net::Ident::_export_hooks() called too early to check prototype at /root/.cpan/build/Net-Ident-1.20-rn2JZt/blib/lib/Net/Ident.pm line 29.
>     t/Ident.t ... Failed 3/7 subtests
>
>     Test Summary Report
>     -------------------
>     t/Ident.t (Wstat: 0 Tests: 7 Failed: 3)
>       Failed tests:  1-3
>     Files=4, Tests=8, 123 wallclock secs ( 0.33 usr  0.05 sys +  3.00 cusr  0.56 csys =  3.94 CPU)
>     Result: FAIL
>     Failed 1/4 test programs. 3/8 subtests failed.
>     make: *** [test_dynamic] Error 255
>       JPC/Net-Ident-1.20.tar.gz
>       /usr/bin/make test -- NOT OK
>     //hint// to see the cpan-testers results for installing this module, try:
>       reports JPC/Net-Ident-1.20.tar.gz
>     Warning (usually harmless): 'YAML' not installed, will not store persistent state
>     Running make install
>       make test had returned bad status, won't install without force
>     Failed during this command:
>      JPC/Net-Ident-1.20.tar.gz                    : make_test NO

Is the same.

> And what about the warnings avout 'score set for non-existent rule', is
> this something to worry about?

I do not have those anymore.

-- 
Cecil Westerhof
Senior Software Engineer
LinkedIn: http://www.linkedin.com/in/cecilwesterhof