CPAN's RT::Crypt::SMIME installation fails

I have been forced to do a manual installation of RT::Crypt::SMIME (as
CPAN installation failed). The manual installation fails during the
"test" phase, as I get an error/warning message about the fact that
"RT.pm" can not be located in @INC (my RT.pm is actually located
under my $RTHOME/lib). I tried 2 separate approaches to point to the
location of “RT.pm” during the "perl Makefile.PL’ step, and both failed:

Scenario 1 (the following line is in a shell script called
"RUN_rt_crypt_smime.sh):

RTHOME=/ngs/app/rt/oppresso/rt-3.8.4 perl  Makefile.PL

or (same as above with the addition of where RT.pm is located at --  

using the “Include” directory switch ‘-I’):

RTHOME=/ngs/app/rt/oppresso/rt-3.8.4 perl -I/ngs/app/rt/oppresso/ 

rt-3.8.4/lib Makefile.PL

Scenario 2 (during the ‘make’ or ‘make test’ phase I provided an env
variable for the location of RT.pm):

RTHOME_LIB=/usr/local/src/oppresso/rt-3.8.4/lib make

or

RTHOME_LIB=/usr/local/src/oppresso/rt-3.8.4/lib make test

Neither of the above worked (I am running RT 3.8.4, & using perl
5.8.8). Below are the details for the installation:

Results of Manual installation:

  1. Makefile.PL
    sudo ./RUN_rt_crypt_smime.sh
    Cannot determine perl version info from lib/RT/Crypt/SMIME.pm
    Using RT configuration from /ngs/app/rt/oppresso/rt-3.8.4/lib/RT.pm:
    ./etc => /ngs/app/rt/oppresso/rt-3.8.4/local/plugins/RT-Crypt-SMIME/etc
    ./html => /ngs/app/rt/oppresso/rt-3.8.4/local/plugins/RT-Crypt-SMIME/
    html
    ./lib => /ngs/app/rt/oppresso/rt-3.8.4/local/plugins/RT-Crypt-SMIME/lib
    For first-time installation, type ‘make initdb’.
    Writing Makefile for RT::Crypt::SMIME

2)make step
sudo make
Skip blib/lib/RT/Crypt/sign_and_encrypt.pl (unchanged)
Skip blib/lib/RT/Crypt/SMIME.pm (unchanged)
Skip blib/lib/RT/Interface/Email/Auth/SMIME.pm (unchanged)
Skip blib/lib/RT/Interface/Email/Auth/StrictSMIME.pm (unchanged)
Manifying blib/man3/RT::Interface::email::Auth::StrictSMIME.3pm
Manifying blib/man3/RT::Interface::email::Auth::SMIME.3pm
Manifying blib/man3/RT::Crypt::SMIME.3pm

  1. make test step

sudo make test
Skip blib/lib/RT/Crypt/sign_and_encrypt.pl (unchanged)
Skip blib/lib/RT/Crypt/SMIME.pm (unchanged)
Skip blib/lib/RT/Interface/Email/Auth/SMIME.pm (unchanged)
Skip blib/lib/RT/Interface/Email/Auth/StrictSMIME.pm (unchanged)
PERL_DL_NONLAZY=1 /usr/bin/perl “-MExtUtils::Command::MM” “-e”
“test_harness(0, ‘inc’, ‘blib/lib’, ‘blib/arch’)” t/*.t
t/00.load.t … 1/1

Failed test ‘use RT::Crypt::SMIME;’

at t/00.load.t line 4.

Tried to use ‘RT::Crypt::SMIME’.

Error: Can’t locate RT.pm in @INC (@INC contains: /usr/

local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/inc /usr/local/.cpan/
build/RT-Crypt-SMIME-0.22-IzGUj_/blib/lib /usr/local/.cpan/build/RT-
Crypt-SMIME-0.22-IzGUj_/blib/arch /Library/Perl/Updates/5.8.8/darwin-
thread-multi-2level /Library/Perl/Updates/5.8.8 /System/Library/Perl/
5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /Library/
Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /Library/
Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /Network/
Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/Extras/
5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/5.8.8 /
Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at /usr/local/.cpan/build/RT-
Crypt-SMIME-0.22-IzGUj_/blib/lib/RT/Crypt/SMIME.pm line 35.

BEGIN failed–compilation aborted at /usr/local/.cpan/build/RT-Crypt-

SMIME-0.22-IzGUj_/blib/lib/RT/Crypt/SMIME.pm line 35.

Compilation failed in require at (eval 4) line 2.

BEGIN failed–compilation aborted at (eval 4) line 2.

Use of uninitialized value in concatenation (.) or string at t/
00.load.t line 7.

Testing RT::Crypt::SMIME

Looks like you failed 1 test of 1.

t/00.load.t … Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/1 subtests
t/pod-coverage.t … skipped: Test::Pod::Coverage 1.04 required for
testing POD coverage
t/pod.t … ok
t/smime-incoming.t … Can’t locate RT/Tickets.pm in @INC (@INC
contains: /usr/local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/inc /usr/
local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/blib/lib /usr/local/.cpan/
build/RT-Crypt-SMIME-0.22-IzGUj_/blib/arch /Library/Perl/Updates/5.8.8/
darwin-thread-multi-2level /Library/Perl/Updates/5.8.8 /System/Library/
Perl/5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /
Library/Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /
Library/Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /
Network/Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/
Extras/5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/
5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at t/smime-incoming.t
line 11.
BEGIN failed–compilation aborted at t/smime-incoming.t line 11.
t/smime-incoming.t … Dubious, test returned 2 (wstat 512, 0x200)
No subtests run
t/smime-outgoing.t … Can’t locate RT/Interface/Email.pm in @INC (@INC
contains: /usr/local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/inc /usr/
local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/blib/lib /usr/local/.cpan/
build/RT-Crypt-SMIME-0.22-IzGUj_/blib/arch /Library/Perl/Updates/5.8.8/
darwin-thread-multi-2level /Library/Perl/Updates/5.8.8 /System/Library/
Perl/5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /
Library/Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /
Library/Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /
Network/Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/
Extras/5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/
5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at t/smime-outgoing.t
line 13.
BEGIN failed–compilation aborted at t/smime-outgoing.t line 13.
t/smime-outgoing.t … Dubious, test returned 2 (wstat 512, 0x200)
No subtests run

Test Summary Report
t/00.load.t (Wstat: 256 Tests: 1 Failed: 1)
Failed test: 1
Non-zero exit status: 1
t/smime-incoming.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
t/smime-outgoing.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
Files=5, Tests=5, 0 wallclock secs ( 0.02 usr 0.02 sys + 0.15 cusr
0.03 csys = 0.22 CPU)
Result: FAIL
Failed 3/5 test programs. 1/5 subtests failed.
make: *** [test_dynamic] Error 2

  1. prove -bv step (for failing tests)

sudo prove -bv t/00.load.t
t/00.load.t …
1…1
not ok 1 - use RT::Crypt::SMIME;

Failed test ‘use RT::Crypt::SMIME;’

at t/00.load.t line 4.

Tried to use ‘RT::Crypt::SMIME’.

Error: Can’t locate RT.pm in @INC (@INC contains: /usr/

local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/blib/lib /usr/local/.cpan/
build/RT-Crypt-SMIME-0.22-IzGUj_/blib/arch /Library/Perl/Updates/5.8.8/
darwin-thread-multi-2level /Library/Perl/Updates/5.8.8 /System/Library/
Perl/5.8.8/darwin-thread-multi-2level /System/Library/Perl/5.8.8 /
Library/Perl/5.8.8/darwin-thread-multi-2level /Library/Perl/5.8.8 /
Library/Perl /Network/Library/Perl/5.8.8/darwin-thread-multi-2level /
Network/Library/Perl/5.8.8 /Network/Library/Perl /System/Library/Perl/
Extras/5.8.8/darwin-thread-multi-2level /System/Library/Perl/Extras/
5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .) at /usr/local/.cpan/
build/RT-Crypt-SMIME-0.22-IzGUj_/blib/lib/RT/Crypt/SMIME.pm line 35.

BEGIN failed–compilation aborted at /usr/local/.cpan/build/RT-Crypt-

SMIME-0.22-IzGUj_/blib/lib/RT/Crypt/SMIME.pm line 35.

Compilation failed in require at (eval 4) line 2.

BEGIN failed–compilation aborted at (eval 4) line 2.

Testing RT::Crypt::SMIME

Looks like you failed 1 test of 1.

Dubious, test returned 1 (wstat 256, 0x100)
Failed 1/1 subtests

Test Summary Report
t/00.load.t (Wstat: 256 Tests: 1 Failed: 1)
Failed test: 1
Non-zero exit status: 1
Files=1, Tests=1, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.03 cusr
0.00 csys = 0.05 CPU)
Result: FAIL

sudo prove -bv t/smime-incoming.t
t/smime-incoming.t … Can’t locate RT/Tickets.pm in @INC (@INC
contains: /usr/local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/blib/lib /
usr/local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/blib/arch /Library/
Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/Updates/
5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level /System/
Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread-multi-2level /
Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/5.8.8/darwin-
thread-multi-2level /Network/Library/Perl/5.8.8 /Network/Library/Perl /
System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level /System/
Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .)
at t/smime-incoming.t line 11.
BEGIN failed–compilation aborted at t/smime-incoming.t line 11.
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run

Test Summary Report
t/smime-incoming.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
Files=1, Tests=0, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.03 cusr
0.00 csys = 0.05 CPU)
Result: FAIL

sudo prove -bv t/smime-outgoing.t
t/smime-outgoing.t … Can’t locate RT/Interface/Email.pm in @INC (@INC
contains: /usr/local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/blib/lib /
usr/local/.cpan/build/RT-Crypt-SMIME-0.22-IzGUj_/blib/arch /Library/
Perl/Updates/5.8.8/darwin-thread-multi-2level /Library/Perl/Updates/
5.8.8 /System/Library/Perl/5.8.8/darwin-thread-multi-2level /System/
Library/Perl/5.8.8 /Library/Perl/5.8.8/darwin-thread-multi-2level /
Library/Perl/5.8.8 /Library/Perl /Network/Library/Perl/5.8.8/darwin-
thread-multi-2level /Network/Library/Perl/5.8.8 /Network/Library/Perl /
System/Library/Perl/Extras/5.8.8/darwin-thread-multi-2level /System/
Library/Perl/Extras/5.8.8 /Library/Perl/5.8.6 /Library/Perl/5.8.1 .)
at t/smime-outgoing.t line 13.
BEGIN failed–compilation aborted at t/smime-outgoing.t line 13.
Dubious, test returned 2 (wstat 512, 0x200)
No subtests run

Test Summary Report
t/smime-outgoing.t (Wstat: 512 Tests: 0 Failed: 0)
Non-zero exit status: 2
Parse errors: No plan found in TAP output
Files=1, Tests=0, 0 wallclock secs ( 0.02 usr 0.00 sys + 0.03 cusr
0.00 csys = 0.05 CPU)
Result: FAIL

Thanks,
Behzad

I have been forced to do a manual installation of RT::Crypt::SMIME (as

For RT extensions, you’re always going to have to do them manually

Results of Manual installation:

  1. Makefile.PL

sudo ./RUN_rt_crypt_smime.sh
Cannot determine perl version info from lib/RT/Crypt/SMIME.pm
Using RT configuration from /ngs/app/rt/oppresso/rt-3.8.4/lib/RT.pm:
./etc => /ngs/app/rt/oppresso/rt-3.8.4/local/plugins/RT-Crypt-SMIME/etc
./html => /ngs/app/rt/oppresso/rt-3.8.4/local/plugins/RT-Crypt-SMIME/
html
./lib => /ngs/app/rt/oppresso/rt-3.8.4/local/plugins/RT-Crypt-SMIME/lib
For first-time installation, type ‘make initdb’.
Writing Makefile for RT::Crypt::SMIME

2)make step

sudo make
Skip blib/lib/RT/Crypt/sign_and_encrypt.pl (unchanged)
Skip blib/lib/RT/Crypt/SMIME.pm (unchanged)
Skip blib/lib/RT/Interface/Email/Auth/SMIME.pm (unchanged)
Skip blib/lib/RT/Interface/Email/Auth/StrictSMIME.pm (unchanged)
Manifying blib/man3/RT::Interface::email::Auth::StrictSMIME.3pm
Manifying blib/man3/RT::Interface::email::Auth::SMIME.3pm
Manifying blib/man3/RT::Crypt::SMIME.3pm

  1. make test step

The test suite for RT::Crypt::SMIME is realy intended for a development
environment. It’s unfortunate, but I wouldn’t expect it to work on your
live RT instance.

As a heads up, we last qualified it for a customer on 3.6. I don’t know
for sure that it works on 3.8. We could certainly bring it up to date
(or take a patch)

Best,
Jesse

The test suite for RT::Crypt::SMIME is realy intended for a
development
environment. It’s unfortunate, but I wouldn’t expect it to work on
your
live RT instance.

So, if I do a force install and ignore the failing tests, I should
not have any worries about this module performing its functions
properly (i.e., signing, encrypting/decrypting emails encapsulated in
MIME, etc.)?

As a heads up, we last qualified it for a customer on 3.6. I don’t
know
for sure that it works on 3.8. We could certainly bring it up to date
(or take a patch)

I would truly appreciate it if you would be able to update this module
to work with RT 3.8, as we were hoping to use SMIME features of RT.
Incidentally, if this upgrade is not feasible, what do you suggest as
an alternative?

Thanks & Regards,
Behzad

The test suite for RT::Crypt::SMIME is realy intended for a
development
environment. It’s unfortunate, but I wouldn’t expect it to work on
your
live RT instance.

So, if I do a force install and ignore the failing tests, I should
not have any worries about this module performing its functions
properly (i.e., signing, encrypting/decrypting emails encapsulated in
MIME, etc.)?

Absent the caveats I mentioned in my previous message about having not
tested it at all on 3.8 and not knowing if it works, nope.

As a heads up, we last qualified it for a customer on 3.6. I don’t
know
for sure that it works on 3.8. We could certainly bring it up to date
(or take a patch)

I would truly appreciate it if you would be able to update this module
to work with RT 3.8, as we were hoping to use SMIME features of RT.

Sure. Shoot sales@bestpractical.com a note and I’ll make sure that we
get an estimate of the work’s cost to you out to you ASAP.

Incidentally, if this upgrade is not feasible, what do you suggest as
an alternative?

The native PGP support in 3.8 might be an option.

Best,
Jesse