This program comes with several scripts which I would try to install in directory /home/cpanrun/ia64/build/5.6.1/bin. To skip, rerun with option -n given to Makefile.PL. Checking if your kit is complete... Looks good Writing Makefile for MP3::Tag cp Tag/Inf.pm blib/lib/MP3/Tag/Inf.pm cp Tag/ID3v2.pm blib/lib/MP3/Tag/ID3v2.pm cp Tag.pm blib/lib/MP3/Tag.pm cp Tag/File.pm blib/lib/MP3/Tag/File.pm cp ID3v2-Data.pod blib/lib/MP3/ID3v2-Data.pod cp Tag/ID3v1.pm blib/lib/MP3/Tag/ID3v1.pm cp Tag/LastResort.pm blib/lib/MP3/Tag/LastResort.pm cp Tag/ParseData.pm blib/lib/MP3/Tag/ParseData.pm cp Tag/CDDB_File.pm blib/lib/MP3/Tag/CDDB_File.pm cp examples/typeset_audio_dir blib/script/typeset_audio_dir /home/cpanrun/ia64/build/5.6.1/bin/perl -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1/IA64.ARCHREV_0-thread-multi -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1 -MExtUtils::MakeMaker -e "MY->fixin(shift)" blib/script/typeset_audio_dir cp examples/mp3info2 blib/script/mp3info2 /home/cpanrun/ia64/build/5.6.1/bin/perl -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1/IA64.ARCHREV_0-thread-multi -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1 -MExtUtils::MakeMaker -e "MY->fixin(shift)" blib/script/mp3info2 cp examples/audio_rename blib/script/audio_rename /home/cpanrun/ia64/build/5.6.1/bin/perl -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1/IA64.ARCHREV_0-thread-multi -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1 -MExtUtils::MakeMaker -e "MY->fixin(shift)" blib/script/audio_rename Manifying blib/man3/MP3::Tag.3 Manifying blib/man3/MP3::Tag::File.3 Manifying blib/man1/typeset_audio_dir.1 Manifying blib/man3/MP3::Tag::ID3v2-Data.3 Manifying blib/man3/MP3::Tag::ID3v1.3 Manifying blib/man3/MP3::Tag::ParseData.3 Manifying blib/man3/MP3::Tag::CDDB_File.3 Manifying blib/man3/MP3::Tag::ID3v2.3 Manifying blib/man3/MP3::Tag::Inf.3 Manifying blib/man1/mp3info2.1 Manifying blib/man3/MP3::Tag::LastResort.3 Manifying blib/man1/audio_rename.1 PERL_DL_NONLAZY=1 /home/cpanrun/ia64/build/5.6.1/bin/perl -Iblib/arch -Iblib/lib -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1/IA64.ARCHREV_0-thread-multi -I/home/cpanrun/ia64/build/5.6.1/lib/5.6.1 -e 'use Test::Harness qw(&runtests $verbose); $verbose=1; runtests @ARGV;' t/*.t t/interpolate.......1..23 ok 1 # MP3::Tag initialized ok 2 # false conditional ok 3 # false ||-interpolation # `aacontentbb' ok 4 # I(f) interpolates ok 5 # I(fi) interpolates ok 6 # I(fi) interpolates with choice ok 7 # I(fi) interpolates with conditional with choice ok 8 # I(fi) interpolates in conditional # `15h39m05.620' ok 9 # format time 56345.62 # `15h39m05' ok 10 # format time 56345 # `39m05.620' ok 11 # format time 2345.62 # `39m05' ok 12 # format time 2345 # `5.620' ok 13 # format time 5.62 # `5' ok 14 # format time 5 # `15h39m05.62s' ok 15 # format time 56345.62 # `15h39m05s' ok 16 # format time 56345 # `39m05.62s' ok 17 # format time 2345.62 # `39m05s' ok 18 # format time 2345 # `5.62s' ok 19 # format time 5.62 # `5s' ok 20 # format time 5 # `5.62s' ok 21 # format time 5.62 # `5.62s' ok 22 # format time 5.62 # `39m05.62s' ok 23 # format time 2345.62 ok t/mp3tag............1..89 ok 1 # MP3::Tag initialized ok 2 # Detecting ID3v1 ok 3 # Detecting ID3v2 ok 4 # Reading ID3v1 ok 5 # Reading ID3v1/2 via Tag ok 6 # Reading ID3v1 comment via Tag ok 7 # Reading ID3v1 year via Tag ok 8 # Reading ID3v1 genre via Tag ok 9 # Reading ID3v2 ok 10 # Creating new ID3v1 ok 11 # Writing ID3v1 ok 12 # Changing ID3v1 ok 13 # Writing ID3v1 ok 14 # Creating new ID3v2 ok 15 # Writing ID3v2 ok 16 # Changing ID3v2 ok 17 # Writing ID3v2 complex timestamp ok 18 # Writing ID3v2 ok 19 # ID3v2 rounding size ok 20 # Checking new ID3v1 ok 21 # Checking new ID3v1 ok 22 # Checking new ID3v1 ok 23 # Checking new ID3v2 ok 24 # Checking multi-frame ID3v2 ok 25 # Checking multi-frame ID3v2 ok 26 # Checking no comment ok 27 # Checking timestamp(s) in ID3v2 ok 28 # Checking ID3v2 year ok 29 # Changing ID3v2 ''-comment ok 30 # Writing ID3v2 ok 31 # Checking any-language comment ok 32 # Setting ID3v2-comment ok 33 # Writing ID3v2 ok 34 # Checking any-language comment ok 35 # Checking no GER comment ok 36 # Checking ENG comment ok 37 # Checking ID3 comment # `%02t_Title: `000000000New'; ENG have GER , do not have TLAN02' ok 38 # Checking ID3 interpolation ok 39 # .inf file parsed ok 40 # Checking .inf title ok 41 # Checking .inf artist ok 42 # Checking .inf track ok 43 # Checking .inf album ok 44 # Checking .inf year ok 45 # Checking .inf comment ok 46 # Checking .inf comment+source ok 47 # Checking .inf comment source ok 48 # Checking interpolation ok 49 # Checking filename method: ok 50 # interpolate %A ok 51 # Configuring list of cddb_files ok 52 # Title via CDDB_File ok 53 # Artist via CDDB_File ok 54 # Album via CDDB_File ok 55 # Year via CDDB_File ok 56 # Comment via CDDB_File ok 57 # Genre via CDDB_File ok 58 # Track no with CDDB_File ok 59 # artist_collection ok 60 # Year via CDDB_File ok 61 # comment_collection ok 62 # comment_track ok 63 # artist_collection ok 64 # artist ok 65 # artist_collection via %{aC} ok 66 # Configuring comment_remove_date ok 67 # comment_track with removal ok 68 # Configuring2 list of cddb_files ok 69 # Title via CDDB_File ok 70 # Artist via CDDB_File ok 71 # Album via CDDB_File ok 72 # Year via CDDB_File ok 73 # Comment via CDDB_File ok 74 # Genre via CDDB_File ok 75 # Track no with CDDB_File ok 76 # Title via CDDB_File with force ok 77 # Forced comment ok 78 # Artist via CDDB_File with force/interpolate ok 79 # Force/interpolated title ok 80 # Force/interpolated recursive comment ok 81 # Force/interpolated recursive title ok 82 # comment via parse ok 83 # track via parse ok 84 # comment via cached parse ok 85 # title with parse ok 86 # conditional interpolation ok 87 # multi-%c via parse/interpolate ok 88 # multi-%c and %=E via parse/interpolate ok 89 # multi-%c and %e via parse/interpolate ok t/parser............1..20 ok 1 # MP3::Tag initialized ok 2 # Parsed greedily ok 3 # Parsed before correct ok 4 # Parsed after correct ok 5 # Set parse_minmatch ok 6 # Parsed nongreedily ok 7 # Parsed before correct ok 8 # Parsed after correct ok 9 # Parsed COMM(rus,EN,#1,)[foo] ok 10 # Parsed after correct ok 11 # Got tag ok 12 # config parsedata ok 13 # temporary directory not there ok 14 # temporary output file not there ok 15 # Run the parser ok 16 # Output directory created ok 17 # Output file created ok 18 # Output file of correct size ok 19 # Remove output file ok 20 # Remove output directory ok t/set_v2............1..93 Parentheses missing around "my" list at t/set_v2.t line 146. ok 1 # MP3::Tag initialized ok 2 # Got tag ok 3 # set_id3v2_frame ok 4 # ID3v2 tag autocreated ok 5 # Writing ID3v2 ok 6 # Got ID3v2 ok 7 # Got tag ok 8 # parse %{TIT2} ok 9 # 1 key ok 10 # key TIT2 ok 11 # Got tag ok 12 # config parsedata ok 13 # checking a field ok 14 # ID3v2 tag autocreated ok 15 # Writing ID3v2 ok 16 # Got ID3v2 ok 17 # Got tag ok 18 # config parsedata TXXX[foo] ok 19 # prepare the data ok 20 # have TXXX ok 21 # no TXXX01 ok 22 # no TXXX02 ok 23 # update ok 24 # reinit ourselves ok 25 # prepare the data ok 26 # have TXXX ok 27 # no TXXX01 ok 28 # no TXXX02 ok 29 # reinit ourselves ok 30 # select_id3v2_frame for write ok 31 # select_id3v2_frame_by_descr for write ok 32 # update ok 33 # reinit ourselves ok 34 # select_id3v2_frame for read ok 35 # select_id3v2_frame for read ok 36 # select_id3v2_frame for read ok 37 # select_id3v2_frame for read, TXXX with [] ok 38 # select_id3v2_frame_by_descr for read, TXXX with [] ok 39 # select_id3v2_frame for read, lang=undef ok 40 # select_id3v2_frame for read ok 41 # select_id3v2_frame for read, empty lang ok 42 # select_id3v2_frame for read ok 43 # select_id3v2_frame for read ok 44 # select_id3v2_frame for read ok 45 # select_id3v2_frame for read, Lang/descr are undef ok 46 # select_id3v2_frame for read ok 47 # select_id3v2_frame for read ok 48 # select_id3v2_frame for read ok 49 # reinit ourselves ok 50 # got size ok 51 # select_id3v2_frame for write, make shorter ok 52 # update ok 53 # reinit ourselves ok 54 # got size ok 55 # size did not grow ok 56 # select_id3v2_frame for write, make longer - as it was ok 57 # update ok 58 # reinit ourselves ok 59 # got size ok 60 # size did not shrink ok 61 # size did not grow w.r.t. initial size ok 62 # has 1 ok 63 # reinit from new file ok 64 # update ok 65 # size ok (but this may change if we look for padding more aggressively) ok 66 # has 1 ok 67 # reinit ok 68 # tagsize the same ok 69 # padding_size the same ok 70 # update ok 71 # tagsize small enough ok 72 # has 1 ok 73 # Title preserved ok 74 # reinit ok 75 # update ok 76 # tagsize small enough ok 77 # has 1 ok 78 # Title preserved ok 79 # Got tag ok 80 # Set frame ok 81 # Frame is set indeed ok 82 # Frame is selectable ok 83 # Frame is interpolatable ok 84 # Frame is conditionally interpolatable ok 85 # Frame is conditionally interpolatable with complicated expansion ok 86 # Frame is neg-conditionally interpolatable ok 87 # Frame is |-interpolatable ok 88 # Frame is |-interpolatable ok 89 # Frame is ||-interpolatable with complicated expansion ok 90 # Frame is ||-interpolatable with complicated expansion ok 91 # Frame is ||-interpolatable with a frame in expansion ok 92 # Frame is &-interpolatable ok 93 # update ok t/update_tags.......1..5 ok 1 # MP3::Tag initialized ok 2 # Got tag ok 3 # update_tags() called ok 4 # Regot tag ok 5 # Tag correctly written ok t/v2_comments.......1..105 ok 1 # MP3::Tag initialized ok 2 # Got tag ok 3 # Changing ID3v2 ''-comment ok 4 # ID3v2 tag autocreated ok 5 # Writing ID3v2 ok 6 # have COMM frame ok 7 # no COMM01 frame ok 8 # no COMM02 frame ok 9 # Got tag via %{COMM(RUS,eng)[foo]} ok 10 # Got tag via %{COMM(rus,ENG)[foo]} ok 11 # Got tag via %{COMM(rus,EN,#0)[foo]} ok 12 # Got tag via %{COMM(rus,EN,#1,)[foo]} ok 13 # Got tag via %{COMM[foo]} ok 14 # No tag via %{COMM(rus,EN,#1)[foo]} ok 15 # Conditional via %{COMM(rus,EN,#1)[foo]} ok 16 # Alternative via %{COMM(rus,EN,#1)[foo]} ok 17 # Alternative via %{COMM(rus,EN,#1,)[foo]} ok 18 # Alternative via %{COMM(rus,EN,#1)[foo]} ok 19 # Alternative via %{COMM(rus,EN,#1,)[foo]} ok 20 # Alternative via %{COMM(rus,EN,#1)[foo]} ok 21 # Alternative via %{COMM01} ok 22 # Set TLEN frame ok 23 # Alternative via %{TLEN} ok 24 # Alternative via %{COMM01} ok 25 # Alternative via %{TLEN} ok 26 # Alternative via %{TLEN} ok 27 # Alternative via %{y} # res=`test12.mp3' ok 28 # Alternative via %{f} ok 29 # Alternative via %{y} ok 30 # Alternative via %{f} ok 31 # Alternative via %{y} ok 32 # Parsed %={COMM(rus,EN,#1,)[foo]} ok 33 # Parsed before %={COMM(rus,EN,#2,)[foo]} ok 34 # Parsed after %={COMM(rus,EN,#2,)[foo]} ok 35 # Changing ID3v2 ''-comment ok 36 # Alternative via %{COMM(rus,EN,fra)[foo]} ok 37 # Alternative via %{COMM01} ok 38 # Set year ok 39 # Alternative via %{y} ok 40 # reget tags ok 41 # config parse_data ok 42 # Get the machinery started ok 43 # have it parsed ok 44 # update tags ok 45 # reget tags ok 46 # have it stored ok 47 # init ourselves ok 48 # config parse_data ok 49 # prepare the data ok 50 # have COMM ok 51 # no COMM01 ok 52 # no COMM02 ok 53 # update ok 54 # reinit ourselves ok 55 # have COMM ok 56 # no COMM01 ok 57 # no COMM02 ok 58 # config parse_data ok 59 # prepare the data ok 60 # have COMM ok 61 # no COMM01 ok 62 # no COMM02 ok 63 # init ourselves ok 64 # config multiple parse_data to create COMMs ok 65 # prepare the data ok 66 # have COMM ok 67 # have COMM01 ok 68 # have COMM02 ok 69 # no COMM03 # `bar; baz; foo' ok 70 # parse COMM[a]&COMM[aa]&COMM[b]&COMM[c] ok 71 # update ok 72 # reinit ourselves ok 73 # config multiple parse_data to delete COMMs ok 74 # prepare the data ok 75 # no COMM ok 76 # no COMM01 ok 77 # no COMM02 ok 78 # no COMM03 ok 79 # reinit ourselves ok 80 # config multiple parse_data to delete COMMs ok 81 # prepare the data ok 82 # no COMM ok 83 # no COMM01 ok 84 # no COMM02 ok 85 # no COMM03 ok 86 # reinit ourselves ok 87 # config multiple parse_data to delete COMMs ok 88 # prepare the data ok 89 # no COMM ok 90 # no COMM01 ok 91 # no COMM02 ok 92 # no COMM03 ok 93 # reinit ourselves ok 94 # config multiple parse_data to delete COMMs ok 95 # prepare the data ok 96 # no COMM ok 97 # no COMM01 ok 98 # no COMM02 ok 99 # no COMM03 ok 100 # update ok 101 # reinit ourselves ok 102 # no COMM ok 103 # no COMM01 ok 104 # no COMM02 ok 105 # no COMM03 ok All tests successful. Files=6, Tests=335, 8 wallclock secs ( 1.62 cusr + 0.80 csys = 2.42 CPU) Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag.pm Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/ID3v2-Data.pod Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag/Inf.pm Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag/ID3v2.pm Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag/File.pm Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag/ID3v1.pm Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag/LastResort.pm Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag/ParseData.pm Installing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/MP3/Tag/CDDB_File.pm Installing /home/cpanrun/ia64/build/5.6.1/man/man1/typeset_audio_dir.1 Installing /home/cpanrun/ia64/build/5.6.1/man/man1/mp3info2.1 Installing /home/cpanrun/ia64/build/5.6.1/man/man1/audio_rename.1 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::File.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::ID3v2-Data.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::ID3v1.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::ParseData.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::CDDB_File.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::ID3v2.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::Inf.3 Installing /home/cpanrun/ia64/build/5.6.1/man/man3/MP3::Tag::LastResort.3 Installing /home/cpanrun/ia64/build/5.6.1/bin/typeset_audio_dir Installing /home/cpanrun/ia64/build/5.6.1/bin/mp3info2 Installing /home/cpanrun/ia64/build/5.6.1/bin/audio_rename Writing /home/cpanrun/ia64/build/5.6.1/lib/site_perl/5.6.1/IA64.ARCHREV_0-thread-multi/auto/MP3/Tag/.packlist Appending installation info to /home/cpanrun/ia64/build/5.6.1/lib/5.6.1/IA64.ARCHREV_0-thread-multi/perllocal.pod