在ubuntu上配置Catalyst.

1.  relocation error:
  undefined symbol: PL_dowarn
這類似問題主要是因爲靜態鏈接時加載的包不對引起的。比如安裝有5.8.8和5.8.7的perl。編譯的時候加載的5.8.7.運行的時候使用5.8.8就會引起這個問題。

2. libexec/libperl.so: open failed: No such file or directory
it probably means that Perl was compiled with a shared library. mod_perl does detect this and links the Apache executable to the Perl shared library (libperl.so).
沒有找到Perl的動態庫,
使用:
LD_LIBRARY_PRELOAD=/perl安裝路徑/libperl.so
就行了。

3. 刪除所有的Perl.
rm -rf /usr/local/lib/perl*
rm -rf /usr/lib/perl*
find /usr/bin/ -name "*perl" -exec rm {} /;
/usr/local/share/perl
/usr/share/perl

在安編譯新的Perl的時候,最好刪除原來的Perl,不然很容易出現undefined symbol: PL_dowarn錯誤。
expat-2.0.0.tar.gz

4. expat-2.0.0.tar.gz 一個C寫的 xml解析包。安裝XML::XAL的時候需要用到這個包。

5. 學到了一個新的命令
   ldd 可以看查一個程序所有引用的符號和動態包。
例如:
[deon@b75 deon]$ ldd -r /usr/local/apache/bin/httpd
        libm.so.6 => /lib/libm.so.6 (0x40028000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x40049000)
        libgdbm.so.2 => /usr/lib/libgdbm.so.2 (0x40075000)
        libnsl.so.1 => /lib/libnsl.so.1 (0x4007c000)
        libdl.so.2 => /lib/libdl.so.2 (0x4008f000)
        libutil.so.1 => /lib/libutil.so.1 (0x40093000)
        libc.so.6 => /lib/libc.so.6 (0x40096000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)


昨天晚上安裝Catalyst時用到的包。還有很多沒有記下來。
Readonly-1.03.tar.gz
Set::Object
Catalyst::Plugin::Cache::FileCache
Catalyst::Plugin::Authentication::Credential::Password
Catalyst::Plugin::I18N
Catalyst::Plugin::Unicode
Catalyst::Engine::Apache::MP13
Catalyst::Plugin::DefaultEnd
Catalyst::Plugin::Session::CGISession
Class::Data::Accessor
DBIx::Class
DBI
Catalyst::Model::DBIC::Schema
Catalyst::Plugin::ConfigLoader::XML
Catalyst::View::TT


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章