Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

mod_wsgi.so: Cannot load mod_wsgi.so into server: libpython2.5.so.1.0: cannot open shared object file: No such file or directory

when i type:

[root@lts5 /]# 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)

How can i make possible that when i type:

[root@lts5srv1 /]# ldd mod_wsgi.so
ldd: ./mod_wsgi.so: No such file or directory

..showing the same result?

In fact when i try to restart the server:

[root@lts5srv1 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]
like image 532
Kreshnik Avatar asked Oct 07 '22 19:10

Kreshnik


1 Answers

Running 'ldd mod_wsgi.so' will only work if you are in the same directory as the mod_wsgi.so file.

Explain why you are using such an old mod_wsgi version. Did you compile mod_wsgi from source code yourself or using an existing binary for mod_wsgi?

If compiling from source code, use mod_wsgi 3.4 (the latest), when you build it from source, do it as:

LD_RUN_PATH=/root/epd-5.1.0/lib make

The LD_RUN_PATH will embed location of Python library directory into mod_wsgi.so so it can find it at run time, given that your library is not in a standard location.

like image 170
Graham Dumpleton Avatar answered Oct 10 '22 02:10

Graham Dumpleton