2012-08-30 7 views
5

i yazarken:mod_wsgi.so: libpython2.5.so.1.0: sunucu içine mod_wsgi.so yüklenemiyor paylaşılan nesne dosyası açılamıyor: Böyle bir dosya ya da dizin

[[email protected] /]# ldd /usr/lib64/httpd/modules/mod_wsgi.so 
    libpython2.5.so.1.0 => /root/epd-5.1.0/lib/libpython2.5.so.1.0 (0x00002b4b53ccf000) 
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00002b4b54036000) 
    libdl.so.2 => /lib64/libdl.so.2 (0x00002b4b54251000) 
    libutil.so.1 => /lib64/libutil.so.1 (0x00002b4b54456000) 
    libc.so.6 => /lib64/libc.so.6 (0x00002b4b54659000) 
    libm.so.6 => /lib64/libm.so.6 (0x00002b4b549b1000) 
    /lib64/ld-linux-x86-64.so.2 (0x0000003d9f600000) 

Nasıl mümkün hale getirebilir Bunu yazdığımda, aynı sonucu gösterirken?

[[email protected] /]# ldd mod_wsgi.so 
ldd: ./mod_wsgi.so: No such file or directory 

Aslında

i sunucuyu yeniden başlatmak için deneyin:

[[email protected] mod_wsgi-2.3]# service httpd restart 
Stopping httpd:           [FAILED] 
Starting httpd: httpd: Syntax error on line 202 of /etc/httpd/conf/httpd.conf: 
Cannot load /etc/httpd/modules/mod_wsgi.so into server: 
libpython2.5.so.1.0: cannot open shared object file: No such file or directory 
                  [FAILED] 

cevap

3

Eğer mod_wsgi.so dosyasıyla aynı dizinde bulunan durumunda çalışacaktır 'ldd mod_wsgi.so' Running.

Neden böyle eski bir mod_wsgi sürümünü kullandığınızı açıklayın. Mod_wsgi'yi kaynak koddan kendiniz mi derlediniz veya mod_wsgi için var olan bir ikili yazılımı mı kullandınız?

kaynak kodundan derleme, kullanırsanız

mod_wsgi 3.4 Eğer kaynağından oluştururken (en son) olarak bunu:

LD_RUN_PATH=/root/epd-5.1.0/lib make 

LD_RUN_PATH mod_wsgi.so yüzden içine Python kütüphanesi dizinin konumunu gömmek olacaktır kitaplığınızın standart bir konumda olmaması koşuluyla çalışma zamanında bulabilir.

0
  1. Ekle /etc/ld.so.conf dosyanızın 1 hattına aşağıdaki:

    /usr/local/lib 
    include ld.so.conf.d/*.conf 
    
  2. Run ldconfig