Klaus1: PHP Modul installiert, wird aber nicht geladen

Hallo,

ich habe die PHP-Version eines Webservers von 7.2 auf 7.4 aktualisiert. Danach muss ich (leider) auch immer das SAPRFC-Modul neu kompilieren, damit es läuft. Allerdings hat es diesmal nicht funktioniert. Nach dem Update auf 7.4 musste ich erstmal wieder die php.ini anpassen, aber das ist wohl Nebensache. Dann habe ich noch php74-devel installiert, damit ich Zugriff auf phpize bekomme. Danach habe ich wieder die vorhandenen Sourcen neu kompiliert

phpize
./configure
make
make install

Und im conf.d vom php74 den ini-Eintrag erstellt.

Dennoch meckert PHP beim Start:

Module compiled with module API=20170718
PHP    compiled with module API=20190902

Weiß jemand, wie ich das gerade biegen kann? Hab ich die falsche phpize-Version verwendet oder wovon hängt es ab, welche Modul-API genutzt wurde?

LG Klaus

  1. Nachtrag:

    Sowohl phpize als auch php-config zeigen die korrekte Version an:

    Configuring for:
    PHP Api Version:         20190902
    Zend Module Api No:      20190902
    Zend Extension Api No:   320190902
    
    php-config --version
    7.4.6
    

    Auch mein Versuch mit

    ./configure --with-php-config=/usr/bin/php-config
    

    war leider ohne Erfolg.

  2. phpize
    
    Module compiled with module API=20170718
    PHP    compiled with module API=20190902
    

    Das könnte an parallelen Installationen von 7.2 und 7.4 liegen.

    Schau mal nach, welches phpize und welche Libarys verwendet werden (Unter Linux mit whitch). Womöglich gibt es unterschiedliche Ansichten zwischen Dir und Deinem Computer über die Pfade zu Programmen und Libarys.

    Vielleicht hilft auch echo "<? phpinfo();?>" | php | less in einem Terminal weiter...

    1. Hallo,

      ich habe die Lösung gefunden: Nach einem make distclean und im Anschluss wieder

      phpize
      ./configure
      make
      make install
      

      funktioniert jetzt alles.

      LG Klaus

      1. Hallo,

        ich habe die Lösung gefunden: Nach einem make distclean und im Anschluss wieder

        phpize
        ./configure
        make
        make install
        

        Hm. Ich lösche - wenn ich schon mal was aus Quellen installiere - bei quasi jedem hierbei auftretenden Problem ganz stumpf das Quellverzeichnis und packe es mindestens aus dem existierenden tar-File neu aus… (Wozu hat man denn sonst den mc? 😀) Das mag nicht der „Königsweg“ sein - aber auch Könige gingen ja schon in den Teich…

    2. Vielleicht hilft auch echo "<? phpinfo();?>" | php | less in einem Terminal weiter...

      echo "<?php phpinfo();" | php | less

      1. Hab nachgeschaut. Liefert hilfreiche Informationen...

      2. Mal php-config im Terminal ausführen :-) Das macht ohne Optionen nur Ausgaben.

      3. Der Link in /etc/alternatives/phpize könnte der „casus knacktus“ sein:

      ~$ which phpize
      /usr/bin/phpize
      ~$ ls -l /usr/bin/phpize
      lrwxrwxrwx 1 root root 24 Jul 15 11:58 /usr/bin/phpize -> /etc/alternatives/phpize
      ~$ ls -l /etc/alternatives/phpize
      lrwxrwxrwx 1 root root 18 Jul 15 11:58 /etc/alternatives/phpize -> /usr/bin/phpize8.0
      
    3. Hi,

      Schau mal nach, welches phpize und welche Libarys verwendet werden (Unter Linux mit whitch).

      wird damit das gefundene Programm verhext? 😉

      cu,
      Andreas a/k/a MudGuard

      1. Schau mal nach, welches phpize und welche Libarys verwendet werden (Unter Linux mit whitch).

        wird damit das gefundene Programm verhext? 😉

        Naja. „Verglaskugelt“ trifft es eher. Obwohl die Ergebnisse sehr genau sind.