ставлю gd-2.0.33.tar.gz с поддержкой jpeg
./configure --with-png --with-freetype --with-png --with-jpeg
make
make install
где-то там в процессе не то конфигурации, не компиляции о поддержке jpeg сообщает yes.дальше ставлю php
./configure --prefix=/usr/local/php --with-apache=../apache_1.3.28 --enable-track-vars --enable-mod_charset --with-mysql=/usr/local/mysql --with-mod-charset --with-zlib-dir=/usr/local/zlib --with-gd
make
make installпотом соответственно ставлю мод к апачу, сам апач...
всё запускается и работает.
phpinfo показывает поддержку gd, но поддержки jpeg в этой бибилиотеке он не обнаруживает!
(freetype, ктсти, тоже..)GD Support enabled
GD Version bundled (2.0.28 compatible)
GIF Read Support enabled
GIF Create Support enabled
PNG Support enabled
WBMP Support enabled
XBM Support enabledНету поддержки!
Вопрос: почему и что я делаю не так?
по ходу разбирательств выяснилось следующее.
из ./configure --help следует:
--with-gd[=DIR] Include GD support where DIR is GD install prefix.
If DIR is not set, the bundled GD library will be used."
таким образом кое-что становится понятно.
например, почему я собираю gd-2.0.33 а phpinfo выводит 2.0.28 compatible
однако:
если при конфигурации gd задать в --prefix хоть что-то, то на этапе make компиляция вываливается с ошибкой.
Если ставить по умолчанию (/usr/local) то всё компилируется и инсталируется. НО
при конфигурации php он эти библиотеки не видит. нивкакую.
усли ему сказать ./configure --with-gd=/usr/local то php вываливается прямо на этапе конфигурирования объясняя своё поведение тем, что не может найти библиотек поддержки gd.мда...
теперь вопрос стоит так : как заставить gd скомпилиться куда-нибудь типа /usr/local/gd?
или что надо сказать php чтобы он понял где искать библиотеки gd установленные по умолчанию в /usr/local?
Конец config.log после выполнения конфигурации php5../configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --prefix=/usr/local/apache2/php --with-config-file-path=/usr/local/apache2/php --enable-force-cgi-redirect --disable-cgi --with-zlib=/usr/local/zlib --with-gettext -with-gd=/usr/local
configure:41472: gcc -c -g -O2 -I/usr/local/include conftest.c 1>&5
configure: In function `main':
configure:41467: warning: assignment makes pointer from integer without a cast
configure:41911: checking for gdImageCreate in -lgd
configure:41930: gcc -o conftest -g -O2 -R/usr/local/lib -L/usr/local/lib -R/usr/local/lib -L/usr/local/lib -R/usr/local/zlib/lib -L/usr/local/zlib/lib conftest.c -lgd -lgd -lz -lm -lxml2 -lz -lm -lxml2 -lz -lm 1>&5
/usr/local/lib/libgd.so: undefined reference to `libiconv_open'
/usr/local/lib/libgd.so: undefined reference to `libiconv_close'
/usr/local/lib/libgd.so: undefined reference to `libiconv'
configure: failed program was:
#line 41919 "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. */
char gdImageCreate();int main() {
gdImageCreate()
; return 0; }насколько я понял всё упирается в libiconv.
скомпилить gd bep неё не удаётся.
версия libiconv 1.9.2
что делать?
Столкнулся с проблемой один в один.
может все же кто-нить знает как ее решить??
>Столкнулся с проблемой один в один.
>может все же кто-нить знает как ее решить??такая же фигня
'./configure' '--with-config-file-scan-dir=/usr/local/etc/php' '--with-apxs2=/usr/local/sbin/apxs' '--with-gd=/usr/local/gd' '--with-zlib=/root/zlib' '--with-mysql=/usr/local/bin' '--with-freetype-dir=/usr/local/include/freetype2/freetype' '--with-jpeg-dir' '--with-ttf' '--with-gd' '--enable-gd-native-ttf' '--enable-exif' '--prefix=/usr/local'