mod_wsgi libpython2.7.a could not read symbols bad value
centos ์์ python์ ์ค์นํ์ง ์์๋ ๋์ง๋ง 2.7 ์ด์์ ๋ฒ์ ์ ์ฌ์ฉํ๊ธฐ ์ํด์๋ ์์ค์ค์น๋ฅผ ํด์ผํ๋ค. ์ฌ๊ธฐ(๋๊ธ์ ์ ๋ณด์๊ธธ) ์ฝ์ผ๋ฉด ํ ์ ์์ํ ๋ฐ, mod_wsgi ๋ฅผ ์ฌ์ฉํด์ apache์ ์ฐ๊ฒฐํด์ ์๋ฒ๋ฅผ ๋์ฐ๊ณ ๋์ ํด๋น url๋ก(wsgi ์ ์ฐ๊ฒฐ๋ url) ํธ์ถ์ ์ํ์น์ ์๋ฌ๋ก๊ทธ์ ์๋์ ๊ฐ์ ๋ฉ์์ง๊ฐ ๋์ฌ์ ์๋ค.
libpython2.7.a could not read symbols bad value
์์์ libpython2.7.a
๋ผ๋ ๋ถ๋ถ์์ ๋ฒ์ ์ ๋ฐ๋ผ์ ์กฐ๊ธ์ฉ ๋ฌ๋ผ์ง ์ ์๋๋ฐ, mod_wsgi
์์๋ ์ด๋ถ๋ถ์ Unable To Find Python Shared Library ๋ผ๊ณ ์ค๋ช
ํ๊ณ ์๋ค. mod_wsgi์์ python์ shared library ๋ฅผ ์ฌ์ฉํ๋๋ฐ ์ฐพ์ง ๋ชปํ๋ ๋ฌธ์ ๋ก ํด๊ฒฐ๋ฐฉ๋ฒ์ด ์ฌ๋ฌ๊ฐ์ง ์์ง๋ง ์ ํธํ๋ ๋ฐฉ์์ ํด๋น ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋ฐํ์์ ์ฐธ์กฐํ๋ ์์น, lib๋ usr/lib ๋ก ๋ณต์ฌํด ๋์ผ๋ผ๋ ๊ฒ์ด๋ค. ๊ทธ๊ฒ /usr/local/lib ์ ๊ฐ์ ๋๋ ํ ๋ฆฌ์ ์๋ ๊ฒฝ์ฐ์๋ ํด๋น ๋๋ ํ ๋ฆฌ๋ฅผ โ/etc/ld.so.confโ ์ ์ถ๊ฐํ๋ฉด ๋๋ค๊ณ ์ค๋ช
ํ๊ณ ์๋ค. ์ถ๊ฐ๋ฅผ ์ํด์๋ ld.so.conf.d
๋๋ ํ ๋ฆฌ์ ๋ค์ด๊ฐ์ ํ์ผ์ ํ๋ ๋ง๋ค๊ณ ๊ทธ ์์ /usr/local/lib ๋ผ๊ณ ์
๋ ฅํด๋๋ฉด ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋์๋ ldconfig
(์๋ก์ด ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ ์
๋ฐ์ดํธ ๋์์์ ์ธ์์ํค๊ณ , dynamic linking table์ ์
๋ฐ์ดํธ ์ํจ๋ค.)๋ฅผ ํตํด์ ์ธ์์์ผ์ฃผ๋ฉด ๋๋ค.
์คํํ๊ธฐ ์ ์ ์ด๋ฏธ ์ ์ฐ๊ฒฐ๋์ด ์๋์ง ๋ณด๋ ค๋ฉด, ldd
๋ช
๋ น์ด๋ฅผ ์ด์ฉํด์ ๊ฒ์ฌํด๋ณด๋ฉด ๋๋ค.
[root@webdev modules]# ldd mod_wsgi.so | |
linux-vdso.so.1 => (0x00007fff90dff000) | |
libpython3.4m.so.1.0 => /usr/local/lib/libpython3.4m.so.1.0 (0x00007fad80859000) | |
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007fad8063c000) | |
libdl.so.2 => /lib64/libdl.so.2 (0x00007fad80437000) | |
libutil.so.1 => /lib64/libutil.so.1 (0x00007fad80234000) | |
libm.so.6 => /lib64/libm.so.6 (0x00007fad7ffb0000) | |
libc.so.6 => /lib64/libc.so.6 (0x00007fad7fc1b000) | |
/lib64/ld-linux-x86-64.so.2 (0x000000340ca00000) |