Ich habe eine extenal Abhängigkeit für meine PHP-Erweiterung, die ich kämpfe, um erfolgreich zu kompilieren. Ich möchte, dass diese Erweiterung ein eigenständiges gemeinsames Objekt ist, das, wie ich es verstehe, die Aufgabe von phpize
ist. Wie kann ich diese freigegebene PHP-Erweiterung mit einer Objektdatei c.o
kompilieren?PHP Erweiterung Bibliothek Abhängigkeit
Die manuelle Kompilierung für eine Standalone-Anwendung wie folgt aussehen:
gcc -Wall -o php_library main.c c.o
und für eine gemeinsame Bibliothek:
gcc -Wall -shared -fPIC -o php_library.so main.c c.o
Ich verstehe, dass es Makros für das Hinzufügen in gemeinsam genutzten Bibliothek Abhängigkeiten durch Modifizieren wie: PHP_ADD_LIBRARY(pthread,,EXTENSION_SHARED_LIBADD)
, aber ich bin mir nicht sicher, wie man meine Abhängigkeit zur Kompilierzeit hinzufügen. Gibt es für diesen Anwendungsfall ein ähnliches Makro?
Es ist erwähnenswert, dass ich keinen Zugriff auf den Dependency-Code habe, daher kann c.o
nicht geändert werden, um dieses Problem zu lösen.