Frage

Ich bin Kompilieren PHP5.2.9 auf Mac OS X 10.5.6. Brauchen Sie Hilfe, dies herauszufinden.

Ich habe PHP kompilieren und mit einer grundlegenden Konfiguration zu arbeiten, und jetzt versuche ich mit GD2 zu kompilieren. Das Problem, das ich in laufen lasse, ist, dass, wenn ich das Argument hinzufügen mit Freetype zu bauen, bekomme ich Fehler bauen. Das ist mein Minimum Config, das Problem Demo. Auch weiß ich, dass es andere Anforderungen für libjpeg / libpng, etc. Ich bin nicht die, gerade jetzt machen dies einfacher mit.

sudo ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/conf/php \
--enable-fastcgi \
--with-freetype-dir=/usr/local \
--with-gd 

Fehler:

checking for FT_New_Face in -lfreetype... no
configure: error: Problem with freetype.(a|so). Please check config.log for more information.

Dies ist aus dem Fehlerprotokoll:

configure:36779: gcc -o conftest  -gstabs  -no-cpp-precomp -Wl,-rpath,/usr/loca$
Undefined symbols:
  "_FT_New_Face", referenced from:
      _main in ccgzHTP6.o
ld: symbol(s) not found
collect2: ld returned 1 exit status
configure: failed program was:
#line 36768 "configure"
#include "confdefs.h"
/*     Override any gcc2 internal prototype to avoid an error.  */
/* We use char because int might match the return type of a gcc2
    builtin and then its argument prototype would still apply.  */

Ich habe freelib-2.1.3 von der Quelle gebaut und installiert unter / usr / local /, wie ich in der --with-freetype-dir Argument definiert. Ich denke, ihr sagt mir, seine versuchen, eine Schriftart-Datei zu finden, aber ich bin nicht sicher, ob oder wann eine solche Schriftart installiert wird.

Wenn ich ohne Freetype bauen, werden GD2 bauen und installieren, aber ich will Freetype-Fähigkeit auf meinem System haben. Im Folgenden ist meine komplette Config Setup mit Freetype-Option (die eine, die versagt!)

sudo ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/conf/php --enable-fastcgi \
--with-jpeg-dir=/usr/local \
--with-png-dir=/usr/local \
--with-zlib-dir=/usr/local \
--enable-gd-native-ttf \
--with-tlib=/usr/local \
--with-freetype-dir=/usr/local \
--with-xpm-dir=/usr/X11R6 \
--with-gd 
War es hilfreich?

Lösung

Ok, tat etwas wirklich dumm. Ich habe genau das vergessen, wo ich heruntergeladen Freetype2 aus, aber die 2.1.3 Version ist YEARS veraltet. Ich habe gerade auf 2.3.9 aktualisiert und es freaking kompiliert perfekt. Bleh.

Seien Sie gewarnt, Kolleginnen und Google-Nutzer. Erster Schritt zur Fehlerbehebung ist um sicherzustellen, dass Sie die aktuellsten Release-Versionen Ihrer Anforderungen verwenden.

Andere Tipps

eine benutzerdefinierte Version von PHP Installation einschließlich gewünschten Erweiterungen kann eine Herausforderung sein. Eine Alternative zum alles von Grund auf neu zu kompilieren ist mit MacPorts , die die richtigen Quelldateien, Abhängigkeiten bereitstellt und automatisiert die configure, und machen Prozess installieren.

In der MacPorts Port-Sammlung, die neueste Version von PHP und so ziemlich alle Erweiterungen und Werkzeuge vorhanden sind. Wenn eine neue Version von PHP freigegeben wird, es findet in der Regel ihren Weg in MacPorts ziemlich bald, so dass Ihre installierte Version sehr leicht zu aktualisieren.

Wenn Sie LAMP / MAMP Entwicklung zu tun, MacPorts auch die aktuellen Apache und MySQL-Server-Versionen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top