Изграждане на GD за Linux

Голяма част от работата е типична за нормална компилация на продукти от източника, но тук и там има някои леки отклонения. Освен това, когато описвам действията, вземам предвид, че знаете защо съществува такава полезна команда като ldconfig.

На първо място, ние проверяваме дали за динамично свързване имаме правилно регистрирани пътища към бъдещи споделени библиотеки. Търсим реда във файла /etc/ld.so.conf:

Поставяме freetype като първороден http://www.freetype.org/

./configure; правя; направете инсталиране

ldconfig -p grep libfree

libfreetype.so.6 (libc6) => /usr/local/lib/libfreetype.so.6

libfreetype.so (libc6) => /usr/local/lib/libfreetype.so

Инсталирайте fontconfig http://fontconfig.org/release/

./configure; правя; направете инсталиране

ldconfig -pgrep libfontconfig

libfontconfig.so.1 (libc6) => /usr/local/lib/libfontconfig.so.1

libfontconfig.so.1 (libc6) => /usr/lib/libfontconfig.so.1

libfontconfig.so (libc6) => /usr/local/lib/libfontconfig.so

Инсталирайте libpng http://www.libpng.org/pub/png/libpng.html

Копирайте в корена на директорията със скриптове makefile.linux и го преименувайте на makefile

правя; направете инсталиране

ldconfig -p grep libpng

libpng12.so.0 (libc6) => /usr/local/lib/libpng12.so.0

libpng12.so (libc6) => /usr/local/lib/libpng12.so

libpng.so.3 (libc6) => /usr/local/lib/libpng.so.3

libpng.so (libc6) => /usr/local/lib/libpng.so

Инсталирайте jpg http://libjpeg.sourceforge.net/

./configure; правя; направете инсталиране; make install-lib

ldconfig -pgrep jpeg

libjpeg.so.62 (libc6) => /usr/lib/libjpeg.so.62

./configure; правя без_doc; направете инсталиране;

ldconfig -pgrep t1

libt1.so.5 (libc6) =>/usr/local/lib/libt1.so.5

libt1.so (libc6) => /usr/local/lib/libt1.so

Инсталирайте gd http://www.libgd.org/

Поддръжка на PNG библиотека: да

Поддръжка на JPEG библиотека: да

Поддръжка на Freetype 2.x библиотека: да

Поддръжка на библиотека Fontconfig: да

Поддръжка за Xpm библиотека: не

Поддръжка на pthreads: да

Виждаме предварително какво ще поддържа GD и какво не. Няма X11, така че няма xpm (ftp://metalab.unc.edu/pub/Linux/libs/X/!INDEX.html), но не ми трябва (ако някой от вас иска да инсталира xpm, трябва да провери imake). Да отидем по-нататък:

правя; направете инсталиране

ldconfig -pgrep libgd

libgd.so.2 (libc6) => /usr/local/lib/libgd.so.2

libgd.so (libc6) => /usr/local/lib/libgd.so

На това място всичко е готово. Сега, например, можем да свържем нашите свежи библиотеки от GD към PHP, нещо подобно:

./configure . --with-gd=/usr/local --with-freetype-dir=/usr/local --with-t1lib=/usr/local.

Извикваме phpinfo() и в секцията GD получаваме такава прекрасна картина:

изграждане

И накрая, още няколко връзки към полезни библиотеки: