Python- und mod_wsgi-Pfadproblem

Python- und mod_wsgi-Pfadproblem

Ich habe ein AIX 6.1-System, das ich kompiliert und installiert habe:

  • Apache 2.2.21 (in /usr/local/mercurial)
  • Python 2.7.2 (in /usr/local/bin und /usr/local/lib)
  • mod_wsgi 3.3 (mit dem AIX Fix #1 beschriebenHier)
  • Mercurial 2.0 (systemweit)

Beim Start von Apache erhalte ich jedoch die folgende Meldung im error_log:

IOError: invalid Python installation: unable to open /usr/local/bin/lib/python2.7/config/Makefile (No such file or directory)

Sehen Sie das Problem? bin/libEs existiert nicht./usr/local/lib/python2.7/config/Makefile tutexistiert aber. Ich kann jedoch nicht herausfinden, woher dieser Pfad kommt. Hier sind die Umgebungsvariablen, die ich habe:

PYTHONHOME=/usr/local/bin
PYTHONPATH=/usr/local/lib/python2.7
LIBPATH="/usr/local/mercurial/lib:$LIBPATH"
PATH=/usr/local/bin:/usr/local/lib:$PATH
LDR_CNTRL="MAXDATA=0x80000000"
AIXTHREAD_SCOPE=S
AIXTHREAD_MUTEX_DEBUG=OFF
AIXTHREAD_RWLOCK_DEBUG=OFF
AIXTHREAD_COND_DEBUG=OFF
SPINLOOPTIME=1000
YIELDLOOPTIME=8
MALLOCMULTIHEAP=considersize,heaps:8

Ich habe alle möglichen Kombinationen mit und ohne und in Umgebungsvariablen ausprobiert PYTHONHOME. PYTHONLIBMeine PATH, PATHfalls es wichtig ist, ist:

/usr/bin:/etc:/usr/sbin:/usr/ucb:/usr/bin/X11:/sbin:/usr/opt/ifor/bin:/usr/local/bin:.

Antwort1

PYTHONHOMEsollte nicht nötig sein. Versuchen Sie auch, es auf /usr/local(Standard) einzustellen.

Von demDokumentation:

Standardmäßig werden die Bibliotheken in „prefix/lib/pythonversion“ und „exec_prefix/lib/pythonversion“ gesucht, wobei „prefix“ und „exec_prefix“ installationsabhängige Verzeichnisse sind, die sich beide standardmäßig in „/usr/local“ befinden.

Wenn PYTHONHOME auf ein einzelnes Verzeichnis eingestellt ist, ersetzt sein Wert sowohl das Präfix als auch das exec_prefix.

verwandte Informationen