2012-02-16 4 views
1

私は、配布のためのperlスクリプトをパッケージそれほど好きにPARパッカー(1.012)を使用しています:PARパッカーのシンボル解像度をデバッグする方法は?

頁-c -oスクリプトscript.pl私はさまざまなライブラリなしでマシンに移動するスクリプトを使用

次のエラーメッセージで失敗します。

Can't find 'boot_Compress__Raw__Zlib' symbol in 
/tmp/par-root/cache-206d7ce41fbe60d4e890ae3ac7d39bfc7ce2d710/d6103eb0.so 
at /usr/share/perl5/Archive/Zip.pm line 12 Compilation failed in 
require at /usr/share/perl5/Archive/Zip.pm line 12. BEGIN 
failed--compilation aborted at /usr/share/perl5/Archive/Zip.pm line 
12. Compilation failed in require at -e line 358. 

したがって、シンボルを含むZlib.soライブラリがないようです。私はZlibのが含まれていることが確認でき、デバッグに-vvしてコンパイル:

Written as "auto/Compress/Raw/Zlib/Zlib.so" Packing 
"/tmp/par-jag/cache-044524c2d7fff164771e45125a48ca260a890c0c/5f10a097.so"... 

と私はそれがパッケージ化されたアーカイブであることを確認しました。私はまた、シンボルが見つからないと文句を言っているライブラリをチェックしました:

Written as "auto/IO/IO.so" Packing 
"/tmp/par-jag/cache-044524c2d7fff164771e45125a48ca260a890c0c/d6103eb0.so"... 

私はこの問題を解決する方法がわかりません。さらに、perl-Compress-Raw-Zlibをターゲットボックスにインストールすると、ただちに別のライブラリで失敗します。

Can't find 'boot_Term__ReadKey' symbol in 
/tmp/par-jag/cache-206d7ce41fbe60d4e890ae3ac7d39bfc7ce2d710/d6103eb0.so 

これもパッケージに含まれています。

これを解決/デバッグするにはどうすればよいですか?

+0

これまで解決しましたか?私は、PPのパックされたファイルでも同様の問題を抱えています。 – paulw1128

答えて

0

おそらく、2台のマシンが異なっていて、別のライブラリが必要なのでしょうか? 1つは32ビットの他の64ビットですか?

可能であれば、純粋なPerlスクリプトのみを使用するか、同じ環境でプログラムをパッケージ化する必要があります。

仮想マシンを使用して、同じLinuxをインストールしてそこにパッケージを作成します。

+0

両方ともRHEL6 x86_64を実行していますが、システム間の主な違いは、ビルドシステム上の開発ツールとライブラリの存在です。私は彼らが同じDVDとキックスタートの両方からインストールされていると信じています。 (ビルドシステムに上記の開発ツールとライブラリが最初のロード後に追加されていたとします) – Olson

+0

auto/Compress/Raw/Zlib/Zlib.soファイルが両方のマシンに存在することを確認してくださいdiff)。 – user1126070

+0

両方のマシンにはありません(ppを使用することの要点ではありません)。私の質問の最後のビットに注意してください。どこにターゲットシステムにインストールすれば、そのlibが動作し、次にローカルにインストールされていないlibはまったく同じ方法で失敗します。 – Olson

関連する問題