Apache2 selber kompiliert, aber kein apxs2

Apache, Lighttpd, nginx, Cherokee
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

Hi,

Baue mir mein Apache2 immer selber, aber irgendwie erstellt er keine apxs2.

So habe ich Apache2 kompiliert:

Code: Select all

 ./configure --with-mpm=prefork --enable-modules="so http"  --enable-so --enable-mods-shared="info status cern_meta usertrack asis include autoindex cgid imap deflate alias auth auth_anon auth_digest access cache mem_cache file-cache cgi dir env ext_filter expires headers file_cache log_config mime mime_magic negotiation rewrite speling actions userdir setenvif vhost-alias" --prefix=/srv/www --silent --enable-static-support --with-ssl=shared --with-suexec-docroot=/home --with-suexec-logfile=/var/log/suexec.log --with-suexec-bin=/usr/sbin/suexec2 --with-suexec-caller=wwwrun --with-apxs2=/usr/sbin/apxs2
Kann mir jemand sagen, warum er mir keine apxs2 erstellt?
rudi
Posts: 69
Joined: 2004-12-08 19:10

Re: Apache2 selber kompiliert, aber kein apxs2

Post by rudi »

apxs2 wird nicht erstellt - du brauchst die apache-dev Pakete (glaube ich).
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

rudi wrote:apxs2 wird nicht erstellt - du brauchst die apache-dev Pakete (glaube ich).
Ja das weiss ich wenn ich es via yast installiere wird von der version 2.0.53 das apxs2 installiert.

dachte wenn ich von der neuen version 2.0.59 installiere, dann wird auch ein apxs2 installiert.
oxygen
Posts: 2138
Joined: 2002-12-15 00:10
Location: Bergheim

Re: Apache2 selber kompiliert, aber kein apxs2

Post by oxygen »

das Programm heißt nur bei SuSE apxs2... normal heißt es nur apxs.
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

Das eigentliche Problem ist, das ich kein php mehr kompiliert bekomme nach dem ich das neue apache2 2.0.59 installiert habe.

Code: Select all

Sorry, I cannot run apxs.  Possible reasons follow:

1. Perl is not installed
2. apxs was not found. Try to pass the path using --with-apxs2=/path/to/apxs
3. Apache was not built using --enable-so (the apxs usage page is displayed)

The output of /usr/sbin/apxs2 follows:
/usr/sbin/httpd2-prefork: symbol lookup error: /usr/lib/libaprutil-0.so.0: undefined symbol: gdbm_errno
apxs:Error: Sorry, no shared object support for Apache.
apxs:Error: available under your platform. Make sure.
apxs:Error: the Apache module mod_so is compiled into.
apxs:Error: your server binary `/usr/sbin/httpd2-prefork'..
configure: error: Aborting
Habe schon gegoogelt ohne ende, aber finde zu dem Fehler keine infos und es sind alle nötigen module einkompiliert.

Code: Select all

linux:/usr/src # httpd2 -l
Compiled in modules:
  core.c
  prefork.c
  http_core.c
  mod_so.c

Code: Select all

linux:/usr/src # whereis apxs2
apxs2: /usr/sbin/apxs2 /usr/share/man/man8/apxs2.8.gz

Code: Select all

linux:/usr/src/php-4.4.3 # rpm -qa | grep liba
libapr0-2.0.53-9
libattr-2.4.22-3
libacl-2.2.30-3
libart_lgpl-2.3.17-4
linux:/usr/src/php-4.4.3 # rpm -qa | grep gdbm
gdbm-devel-1.8.3-230
gdbm-1.8.3-230
compat-gdbm-1.8.0-5
Daher auch die frage mit dem apxs2
Sitze daran schon 2 Stunden dran, aber keine Chance. Wenn ich über yast version 2.0.53 installiere, dann lässt sich php als Modul kompilieren, aber sobald ich 2.0.59 installiere kommt diese Fehlermeldung.

Der Apache2 startet ohne Fehlermeldung nur es kann kein php mehr als Modul kompiliert werden.
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

Muss jetzt immer als alte 2.0.53 binary verlinken, wenn ich php als modul kompilieren will - zumindest beim configure part.

wenn sonst keiner ne Idee hat, dann muss ich das wohl so machen :? :x
oxygen
Posts: 2138
Joined: 2002-12-15 00:10
Location: Bergheim

Re: Apache2 selber kompiliert, aber kein apxs2

Post by oxygen »

Die Ursache des Problems steht in meinem vorherigen Beitrag, denn hättest du vielleicht mal lesen sollen. Mal davon abgesehen, stellt SuSE immer aktuelle Apache und PHP Pakete bereit, auch für ältere Distributionen.
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

oxygen wrote:Die Ursache des Problems steht in meinem vorherigen Beitrag, denn hättest du vielleicht mal lesen sollen. Mal davon abgesehen, stellt SuSE immer aktuelle Apache und PHP Pakete bereit, auch für ältere Distributionen.
Ja den habe ich gelesen und hab es auch verstanden.
Hab auch das devel paket neu installiert und dann war apxs auch wieder da, aber das sagt noch nix darüber aus, warum der Fehler kommt.

und für Apache 2.0.59 gibt es keine rpm pakete sonst hätte ich das rpm benutzt. auf ftp.suse.com liegt nur das ganz neue apache 2.2.x.

Daher bleibt mir nix übrig als selber zu kompilieren.
Und wie gesagt der Apache startet ja auch Fehlerfrei nur das kompilieren von php als modul funzt halt nicht mehr.
Roger Wilco
Posts: 5923
Joined: 2004-05-23 12:53

Re: Apache2 selber kompiliert, aber kein apxs2

Post by Roger Wilco »

blnsnoopy26 wrote:Baue mir mein Apache2 immer selber, aber irgendwie erstellt er keine apxs2.
Wie schon erwähnt heißt das Teil "apxs" und ist einfach ein Perlskript, dass aus der Datei httpd-2.0.59/support/apxs.in erstellt wird (Pfade werden angepasst usw.). Kompiliert werden muß da nichts. Im Zweifel, lass den Parameter --with-apxs2 weg. Den gibt es IMHO nicht bei dem Configure-Skript.
blnsnoopy26 wrote:Muss jetzt immer als alte 2.0.53 binary verlinken, wenn ich php als modul kompilieren will - zumindest beim configure part.
Ja, weil du noch ein altes apr-util benutzt, vermutlich ohne GDBM-Unterstützung.
oxygen
Posts: 2138
Joined: 2002-12-15 00:10
Location: Bergheim

Re: Apache2 selber kompiliert, aber kein apxs2

Post by oxygen »

blnsnoopy26 wrote:
oxygen wrote:Die Ursache des Problems steht in meinem vorherigen Beitrag, denn hättest du vielleicht mal lesen sollen. Mal davon abgesehen, stellt SuSE immer aktuelle Apache und PHP Pakete bereit, auch für ältere Distributionen.
Ja den habe ich gelesen und hab es auch verstanden.
Hab auch das devel paket neu installiert und dann war apxs auch wieder da, aber das sagt noch nix darüber aus, warum der Fehler kommt.
Also nochmal.

Du willst nicht apxs2 aus dem SuSE Paket sondern aus deinem selbst kompiliertem (das heißt apxs).
Wie Roger Wilco auch schon sagte gibt es --with-apxs2 nicht. An den angegeben Pfad wird es also auch nicht installiert, sondern in $PREFIX/sbin. prefix ist übrigens meist /usr/local, /usr/local/foo oder /usr (gefährlich)...
/srv/www dagegen ist offensichtlich falsch.
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

Hi,

das mit dem /srv/www das stimmt so wie es ist, weil aus dem alten binary geht dies hervor.

Code: Select all

linux:/home/micha # /usr/sbin/httpd2-prefork.old -V
Server version: Apache/2.0.53
Server built:   Mar 19 2005 21:17:58
Server's Module Magic Number: 20020903:9
Architecture:   32-bit
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/prefork"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_SYSVSEM_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D HTTPD_ROOT="/srv/www" <-- Hier zu sehn
 -D SUEXEC_BIN="/usr/sbin/suexec2"
 -D DEFAULT_PIDLOG="/var/run/httpd2.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_LOCKFILE="/var/run/accept.lock"
 -D DEFAULT_ERRORLOG="/var/log/apache2/error_log"
 -D AP_TYPES_CONFIG_FILE="/etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="/etc/apache2/httpd.conf"
Das ist nämlich der httpd doc root.
wegen dem apr-util werde ich mir mal die neue version runterladen und dann das ganze mal kompilieren.
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

ok habe die datei apxs aus dem support ordner nach /usr/sbin kopiert und chmod 0755 gegeben und nun kann ich php kompilieren.

man was für eine schwere geburt.
Trotzdem danke für aufgebrachte Geduld und nun habe ich auch wieder etws dazu gelernt :) :) :)
User avatar
daemotron
Administrator
Administrator
Posts: 2636
Joined: 2004-01-21 17:44

Re: Apache2 selber kompiliert, aber kein apxs2

Post by daemotron »

blnsnoopy26 wrote:Das ist nämlich der httpd doc root.
Nein, ist es nicht. Mit --prefix=/pfad erzählst Du configure, wo am Ende mit make install die Binaries hingepackt werden sollen. Wie oxygen schon gesagt hat, legt man selbstgebautes bevorzugt unter /usr/local/<programm> ab. Das default document root legst du mit --enable-layout=LAYOUT fest - wobei Du dafür eine eigene Layout-Datei erstellen musst...
http://httpd.apache.org/docs/2.0/progra ... igure.html
blnsnoopy26
Posts: 660
Joined: 2002-10-19 14:01

Re: Apache2 selber kompiliert, aber kein apxs2

Post by blnsnoopy26 »

Hi,

Ja wie du sagtest bevorzugt - ich installiere es lieber so wie das alte installiert wurde mit den selben pfaden.

Und jetzt funzt ja auch alles so wie es sollte und ohne Probleme und kann alles kompilieren was ich möchte :wink:

Ging ja hauptsächlich nur um das neue apxs,... das dies im support Ordner liegt - da bin ich nicht drauf gekommen oder beim googlen drauf gestossen.

Hab nun dazu gelernt und beim nächsten mal weiss ich da bescheid :wink: