我試圖運行一個Perl腳本,但它返回:如何確定Perl模塊導致的「未定義符號:Perl_Tstack_sp_ptr?」
/usr/bin/perl: symbol lookup error: /usr/local/groundwork/perl/lib/5.8.8/x86_64-linux-thread-multi/auto/IO/IO.so: undefined symbol: Perl_Tstack_sp_ptr
有什麼方法來確定什麼的Perl模塊造成的?
我試圖運行一個Perl腳本,但它返回:如何確定Perl模塊導致的「未定義符號:Perl_Tstack_sp_ptr?」
/usr/bin/perl: symbol lookup error: /usr/local/groundwork/perl/lib/5.8.8/x86_64-linux-thread-multi/auto/IO/IO.so: undefined symbol: Perl_Tstack_sp_ptr
有什麼方法來確定什麼的Perl模塊造成的?
IO.so
是IO的二進制組件。這個分佈的模塊也是perl分佈的一部分(即它們是雙重存在的)。
這種類型的錯誤通常發生在使用Perl的一個版本編譯的二進制文件被不同版本的Perl使用時。
當我在新的CentOS上使用舊的perl模塊(例如CentOS 6.4)時,我有許多類似的問題。
/usr/bin/perl: symbol lookup error: /home/sonnn/perl5/lib/perl5/x86_64-linux-thread-multi/auto/Cwd/Cwd.so: undefined symbol: Perl_Tstack_sp_ptr
/usr/bin/perl: symbol lookup error: /home/sonnn/perl5/lib/perl5/x86_64-linux-thread-multi/auto/version/vxs/vxs.so: undefined symbol: Perl_Tstack_sp_ptr
我已經解決了這些問題,通過:從http://search.cpan.org/和CWD的
下載源代碼,版本重新安裝它們
# tar -xzf version-0.9906.tar.gz
# cd version-0.9906
# perl Makefile.PL INSTALL_BASE=/home/sonnn/perl5/
# make
# make install
(If you use default module path, you can omit "INSTALL_BASE=/home/sonnn/perl5/")
做人之道其他模塊
就你而言,我認爲你可以從http://search.cpan.org/下載IO模塊並重新安裝它。
我剛剛發佈了與您發佈的「vxs」完全相同的錯誤。另一種方法是使用:「cpanm版本」和「cpanm DBI」(DBI是有問題的模塊)。我認爲這比手動安裝模塊更容易。 – 2016-11-26 17:54:53
我在登錄文件中定義了一個PERL5LIB
環境變量,但最近遇到了這個問題,但它們指向的是與系統安裝的perl不兼容的目錄。發生這種情況的原因是HOME
文件系統在perl安裝異構的許多不同機器上交叉安裝。刪除環境變量解決了這個問題,我會找到更好的方式來管理本地庫。
編輯:
最後,儘管我知道這不是回答這個問題,我允許自己因爲它看起來像真的很難資料得到,因爲我發現了一堆網站提這些錯誤的,但很少有一致的解決方案。那就是這樣。
我無法在更改平臺路徑之前處理我必須做的zimbra遷移。我們已經完成了從Ubuntu 8.04與Zimbra 6.0.16然後Zimbra 7.2.7,遷移到Ubuntu 10.04,然後升級Zimbra 8.0.9,然後遷移到Centos 7,然後升級到8.6.0
在Centos哪裏我有我沒有運行./install.sh -s後做zimbramon文件的移動...
mv /opt/zimbra/zimbramon/lib/x86_64-linux-gnu-thread-multi/ /opt/zimbra/zimbramon/lib/x86_64-linux-gnu-thread-multi.bak
然後我再次運行install.sh沒有-s
感謝。 '確實是這個問題。腳本頂部的shebang指向了錯誤的perl。 – Connor 2011-06-08 14:18:39
也可能是另一種方式:更新版本的Perl使用舊版本的二進制文件。例如,手動將一些二進制文件從CentOS 6複製到CentOS 7(它使用更高版本的Perl)。 – Nagev 2017-01-31 17:30:55
固定。 。 。 。 。 – ikegami 2017-01-31 17:35:51