こんにちは
Perlを使ったデータベースをselectするCGIプログラムをバイナリ化したいと考えております。
環境:RedHat, postgreSQL
Perl: v5.8.0 built for i386-linux-thread-multi
# perlcc target.cgi
とコマンド実行したところ、バイナリ化はできるものの、WEBから実行すると、以下のエラーがでてしまいます。
Undefined subroutine &DBI::dr::disconnect_all called at /usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi/DBI.pm line 575.
解決策をご存知の方、お願いいたします。
No.1ベストアンサー
- 回答日時:
perlccはPerl言語で書いたプログラムをC言語へ変換するものです。
が、変換されたソースは無駄が多いものになってしまいますし、複雑なもの(元のPerl言語で書いたものが)になるほど正しいものに変換することができません。
また、モジュール(DBI等)を呼んでいるものを扱う場合も同様に動作するものに変換するのは困難(というかムリがある)です。
ちなみに今回のエラーメッセージは、
「~/DBI.pmの575行目で指定されたサブルーチン(DBI::dr::disconnect_all)が定義されていません。定義されていたとしても、既に未定義になっています。」
という意味です。
よって、結論を言うと「バイナリCGIを使いたいなら、はじめからC言語等のコンパイラ言語で書きましょう」ということになります。
なお、perlcc以外にもPARやPerl2EXE等のPerlスクリプトの実行形式化ツールがありますが、これは厳密にはバイナリ化されてはいません。
(Perlコンパイラとスクリプトソースを一緒にパッケージにしているだけなので、中身ではPerl言語本来のインタプリタ言語として動いています。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- Perl perlでリテラル値はメモリにどのように格納されているか? 1 2023/01/15 20:45
- Perl Perl の外部モジュールの利用方法 3 2022/07/10 18:34
- CGI 古ーくからフリーのtree.cgi掲示板を利用させてもらって来ましたが、最新でなにか復活できないか? 2 2023/04/07 10:43
- Perl perlをバージョンアップしたら、今まで正常に動いていたプログラムが、エラーになってしまった 3 2022/10/05 15:44
- Perl Windows10においての『Perl』のプログラムについて 1 2022/05/09 16:04
- Perl Perlのエラーについてご教授ください。初心者です。 CGIを別サーバに移したところ、Perlのバー 5 2023/05/31 10:48
- CGI CGIで出力するhtmlの<!DOCTYPE html>等のタグは要りますか? 2 2023/02/05 21:26
- CGI サイト訪問者の情報を取得したい 1 2023/02/21 11:03
- Perl perlプログラミング 空白行削除 4 2023/01/28 17:58
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
jcode.plが読み込めない
-
htmlファイルへのcgiの組み込み...
-
htmlからテキストを返すperlを...
-
cgiとplとpm
-
requireでreturnを使いたいので...
-
月の第一週とは
-
DBを10件毎に表示ページング...
-
よくある 『 第○(1・2・3・4・...
-
6月の第2 第4火曜日は何日...
-
毎○曜日って、使いますか?
-
エクセルで相対パスの書き方を...
-
[Excel] ある日の曜日が当月の"...
-
週2回のペースって だいたい何...
-
日本語問題 昨日は何曜日ですか...
-
エクセルで毎月第2週日の水曜日...
-
VBA。複数のChangeイベントをま...
-
perlでHTTP Request Headersの...
-
関数ヘッダ?
-
apacheでPerl CGIが作動せず、5...
-
西暦・月からカレンダーを表示
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
perlのrequireの動き方について...
-
Quantifier follows nothing in...
-
jcode.plが読み込めない
-
htmlからテキストを返すperlを...
-
cgiとplとpm
-
requireでreturnを使いたいので...
-
Perlソースを2つのファイルに分...
-
htmlファイルへのcgiの組み込み...
-
セッションファイルが作成でき...
-
use CGI
-
useとrequireでエラー
-
バイナリファイルのアップロード
-
自CGIのURLのパス部分を取得す...
-
Location: で cgi → c...
-
error_logファイルの中身で教え...
-
webからroot権限のコマンドを実...
-
apacheのCGI設定について教えて...
-
cgiからcgiをコールする。
-
Perlccを使ったCGIプログラムの...
-
Locationでターゲット指定はで...
おすすめ情報