記事No | : 9010 |
投稿日 | : 2011/08/25(Thu) 17:26:05 |
タイトル | : clipmailでencode_base64 のエラー |
ID情報 | : junpei66 |
投稿者 | : とつん |
URL | : http://www.omnibus-jp.com/sakura/clipmail/clipmail.html |
はじめまして。
clipmailを設置してみたのですが、
Undefined subroutine &main::encode_base64 called at clipmail.cgi line 526.
というエラーがでて送信ができません。
添付ファイルなしですと、送信できます。
全く詳しくないのですが、base64がサーバーにないとか
そういうことなのでしょうか?
サーバーはロリポップです。
よろしくお願い致します。
記事No | : 9022 |
投稿日 | : 2011/08/26(Fri) 20:50:30 |
タイトル | : Re: clipmailでencode_base64 のエラー |
ID情報 | : kent |
投稿者 | : KENT |
> はじめまして。
>
> clipmailを設置してみたのですが、
> Undefined subroutine &main::encode_base64 called at clipmail.cgi line 526.
> というエラーがでて送信ができません。
>
> 添付ファイルなしですと、送信できます。
>
> 全く詳しくないのですが、base64がサーバーにないとか
> そういうことなのでしょうか?
MIME::Base64は、ロードは成功しているのでしょうね。
encode_base64サブルーチンが実行できないというようなエラーに見えます。
ためしに、523行目にて
open(IN,"$cf{upldir}/$tmpfile");
↓
open(IN,"$cf{upldir}/$tmpfile") or die;
とするとどうなりますか?
記事No | : 9052 |
投稿日 | : 2011/08/29(Mon) 11:44:59 |
タイトル | : Re^2: clipmailでencode_base64 のエラー |
ID情報 | : junpei66 |
投稿者 | : とつん |
URL | : http://www.omnibus-jp.com/sakura/clipmail/clipmail.html |
ご返信ありがとうございます。
open(IN,"$cf{upldir}/$tmpfile") or die;
に書き換えてみましたが、同じエラーがでます。
引き続きよろしくお願い致します。
> > はじめまして。
> >
> > clipmailを設置してみたのですが、
> > Undefined subroutine &main::encode_base64 called at clipmail.cgi line 526.
> > というエラーがでて送信ができません。
> >
> > 添付ファイルなしですと、送信できます。
> >
> > 全く詳しくないのですが、base64がサーバーにないとか
> > そういうことなのでしょうか?
>
> MIME::Base64は、ロードは成功しているのでしょうね。
> encode_base64サブルーチンが実行できないというようなエラーに見えます。
> ためしに、523行目にて
>
> open(IN,"$cf{upldir}/$tmpfile");
>
> ↓
>
> open(IN,"$cf{upldir}/$tmpfile") or die;
>
> とするとどうなりますか?
記事No | : 9059 |
投稿日 | : 2011/08/29(Mon) 17:46:23 |
タイトル | : Re^3: clipmailでencode_base64 のエラー |
ID情報 | : kent |
投稿者 | : KENT |
> ご返信ありがとうございます。
>
> open(IN,"$cf{upldir}/$tmpfile") or die;
>
> に書き換えてみましたが、同じエラーがでます。
> 引き続きよろしくお願い致します。
知り合いにロリポップの環境があるので、試してみたところ正常に動作しましたよ。
ためしに、MIME::Base64を新バンージョンで使ってみましょう。
以下から Base64.pmをダウンロードしてください。
http://cpansearch.perl.org/src/GAAS/MIME-Base64-3.13/
次に、
lib/MIME/フォルダを作成して、そこへ転送してください(パーミッションは設定必要なし)。
(転送後)
lib/MIME/Base64.pm
記事No | : 9067 |
投稿日 | : 2011/08/29(Mon) 18:40:36 |
タイトル | : Re^4: clipmailでencode_base64 のエラー |
ID情報 | : junpei66 |
投稿者 | : とつん |
URL | : http://www.omnibus-jp.com/sakura/clipmail/clipmail.html |
わざわざ試していただいたということで、申し訳ございません。
ありがとうございます。
下記の通りにやってみたのですが、
Software error:
MIME::Base64 object version 3.07 does not match bootstrap parameter 3.13 at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 253.
Software error:
[Mon Aug 29 18:33:18 2011] clipmail.cgi: MIME::Base64 object version 3.07 does not match bootstrap parameter 3.13 at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 253.
Compilation failed in require at (eval 2) line 373.
この2つのエラーが出るようになりました。
今回は添付ファイルなしでも送信できません。
lib/Jcode/MIME/Base64.pm
というのが元々ありますが、これとは別にアップする、
ということですよね?
> > ご返信ありがとうございます。
> >
> > open(IN,"$cf{upldir}/$tmpfile") or die;
> >
> > に書き換えてみましたが、同じエラーがでます。
> > 引き続きよろしくお願い致します。
>
> 知り合いにロリポップの環境があるので、試してみたところ正常に動作しましたよ。
>
> ためしに、MIME::Base64を新バンージョンで使ってみましょう。
>
> 以下から Base64.pmをダウンロードしてください。
>
> http://cpansearch.perl.org/src/GAAS/MIME-Base64-3.13/
>
> 次に、
>
> lib/MIME/フォルダを作成して、そこへ転送してください(パーミッションは設定必要なし)。
>
> (転送後)
> lib/MIME/Base64.pm
>
>
記事No | : 9072 |
投稿日 | : 2011/08/29(Mon) 20:35:17 |
タイトル | : Re^5: clipmailでencode_base64 のエラー |
ID情報 | : kent |
投稿者 | : KENT |
> Software error:
> MIME::Base64 object version 3.07 does not match bootstrap parameter 3.13 at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 253.
>
> Software error:
> [Mon Aug 29 18:33:18 2011] clipmail.cgi: MIME::Base64 object version 3.07 does not match bootstrap parameter 3.13 at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 253.
> Compilation failed in require at (eval 2) line 373.
>
> この2つのエラーが出るようになりました。
連携する別のモジュールのバージョンが合わないと言っているようです。たぶんお使いのサーバのPerl環境が古いようです。
それでは、別の対策を考えてみましょう。
(1) lib/MIME/Base64.pm を削除
(2) 以下のmimew.plをダウンロードする
http://www.cc.rim.or.jp/~ikuta/mime_pls/mimew.pl
(3) (2)のmimew.plをlibディレクトリに置く
lib/mimew.pl
(4) clipmail.cgi 521行目を修正
■変更前
my $buf;
open(IN,"$cf{upldir}/$tmpfile");
binmode(IN);
while ( read(IN, $buf, 60*57) ) {
$body .= encode_base64($buf);
}
close(IN);
■変更後
require "./lib/mimew.pl";
open(IN,"$cf{upldir}/$tmpfile");
binmode(IN);
while (<IN>) {
$body .= &bodyencode($_, "b64");
}
$body .= &benflush("b64");
close(IN);
記事No | : 9075 |
投稿日 | : 2011/08/29(Mon) 22:31:14 |
タイトル | : Re^6: clipmailでencode_base64 のエラー |
ID情報 | : junpei66 |
投稿者 | : とつん |
URL | : http://www.omnibus-jp.com/sakura/clipmail/clipmail.html |
添付ファイル送信できました!
助けていただき、ありがとうございます。
check.cgiで見ると、
•Perlバージョン : 5.008008
とのことです。古いのでしょうか?
同じレンタルサーバでもマシンによって環境が違うということなのですね。
これからもよろしくお願い致します。
> > Software error:
> > MIME::Base64 object version 3.07 does not match bootstrap parameter 3.13 at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 253.
> >
> > Software error:
> > [Mon Aug 29 18:33:18 2011] clipmail.cgi: MIME::Base64 object version 3.07 does not match bootstrap parameter 3.13 at /usr/lib/perl5/5.8.8/i386-linux-thread-multi/DynaLoader.pm line 253.
> > Compilation failed in require at (eval 2) line 373.
> >
> > この2つのエラーが出るようになりました。
>
> 連携する別のモジュールのバージョンが合わないと言っているようです。たぶんお使いのサーバのPerl環境が古いようです。
> それでは、別の対策を考えてみましょう。
>
> (1) lib/MIME/Base64.pm を削除
>
> (2) 以下のmimew.plをダウンロードする
> http://www.cc.rim.or.jp/~ikuta/mime_pls/mimew.pl
>
> (3) (2)のmimew.plをlibディレクトリに置く
> lib/mimew.pl
>
> (4) clipmail.cgi 521行目を修正
>
> ■変更前
> my $buf;
> open(IN,"$cf{upldir}/$tmpfile");
> binmode(IN);
> while ( read(IN, $buf, 60*57) ) {
> $body .= encode_base64($buf);
> }
> close(IN);
>
> ■変更後
> require "./lib/mimew.pl";
> open(IN,"$cf{upldir}/$tmpfile");
> binmode(IN);
> while (<IN>) {
> $body .= &bodyencode($_, "b64");
> }
> $body .= &benflush("b64");
> close(IN);