Сайт | Скачать | Видео | Wiki

Автор Тема: PHP GTK2 где взять (решено)  (Прочитано 6291 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн gmaster

  • Пользователь
  • **
  • Сообщений: 39
  • Репутация: +8/-0
  • Автор темы
PHP GTK2 где взять (решено)
« : 22 Июль 2010, 16:01:15 »
Доброго дня!

Прошу совета, где можно взять PET или, может, SFS, чтобы получить расширение PHP для работы с GTK2? Уже порыл, где мог, не нашёл.
У меня установлен Puppy Jeans. Под ним есть и GTK+ и GTK2. Подключил XAMPP SFS, чтобы получить сервер и PHP. Уже скачал и попробовал скомпилировать, но php-gtk требует PHP v4.3.x и далее не компилируется; php-gtk2 требует удалить старый gtk и тоже отказывается компилироваться.

Что тут можно придумать?
« Последнее редактирование: 24 Июль 2010, 00:56:11 от gmaster »

Оффлайн myname

  • Старожил
  • ****
  • Сообщений: 373
  • Репутация: +15/-1
Re: PHP GTK2 где взять
« Ответ #1 : 22 Июль 2010, 18:35:29 »
Самый Новый xampp поставь, установка элементарна..

Оффлайн gmaster

  • Пользователь
  • **
  • Сообщений: 39
  • Репутация: +8/-0
  • Автор темы
Re: PHP GTK2 где взять
« Ответ #2 : 22 Июль 2010, 20:56:40 »
Aa...a чё php gtk с пхп выше 4.3 не хочет компилится?
Это для случая GTK+, то есть для первой версии GTK.

XAMPP я брал в нашем репозитории http://puppyrus.org/pub/, в нем отсутствует php_gtk.so. Самый новый xampp где лежит?
Я так понимаю, мне надо добавить не GTK (их уже два в системе имеется), а отдельно компилируемое расширение PHP, вышеупомянутую библиотеку php_gtk.so. В компиляции я не силен, но буду пробовать.

Если идеи будут, народ, дайте знать.
А я пошел искать дальше...  :)

Оффлайн gmaster

  • Пользователь
  • **
  • Сообщений: 39
  • Репутация: +8/-0
  • Автор темы
Re: PHP GTK2 где взять
« Ответ #3 : 23 Июль 2010, 21:06:10 »
Возникает ошибка при компиляции php-gtk-2.0.1

Код
*** 'pkg-config --modversion gtk+-2.0' returned 2.10.13, but GTK+ (2.13.0)
*** was found! If pkg-config was correct, then it is best
*** to remove the old version of GTK+. You may also be able to fix the error
*** by modifying your LD_LIBRARY_PATH enviroment variable, or by editing
*** /etc/ld.so.conf. Make sure you have run ldconfig if that is
*** required on your system.
*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH
*** to point to the correct configuration files

Условия: компилирую исходники php-gtk-2.0.1 на свежеустановленном Паппи Джинс с подключённым devx_301.sfs. Перед этим пришлось скомпилировать php-5.2.8, чтобы получить phpize.
Вот в каком именно месте эта зараза конфигур was found версию 2.13.0??? Получается, что на нулевой Джинсе имеется изначально три версии GTK: 1.2.10, 2.10.13 и 2.13.0 (наверно, из-за зависимостей других пакетов...).

Мудрые, дайте совет!  :)

Оффлайн gmaster

  • Пользователь
  • **
  • Сообщений: 39
  • Репутация: +8/-0
  • Автор темы
Re: PHP GTK2 где взять
« Ответ #4 : 24 Июль 2010, 00:54:52 »
*** If pkg-config was wrong, set the environment variable PKG_CONFIG_PATH
*** to point to the correct configuration files
- вот вам и подсказка :).


pkg-config was right
Я так и не понял, из какой библиотеки configure берёт GTK версию 2.13.0. В тексте конфигура задал насильно, что версии совпадают. Потом перекидал кучу библиотек между каталогами /usr/lib и /usr/X11R7/lib, потом-таки докомпилил.

В XAMPP в каталог
/opt/lampp/lib/php/extensions/no-debug-non-zts-20060613
закинул библиотеку php_gtk2.so, в opt/lampp/etc/php.ini добавил строку extension="php_gtk2.so" и вот тут заработала дистрибутивная демка со свистульками и рюшечками...  ;D

Искомый файлик, если кому понадобится, прилагаю.
Всем большой сенкс!
http://mirror.yandex.ru/puppyrus/puppy/pet/php_gtk2.so.tar.gz (1413.81 КБ - загружено 45 раз.)
« Последнее редактирование: 29 Март 2016, 16:52:42 от sfs »

Оффлайн gmaster

  • Пользователь
  • **
  • Сообщений: 39
  • Репутация: +8/-0
  • Автор темы
Re: PHP GTK2 где взять (решено)
« Ответ #5 : 14 Август 2010, 09:17:41 »
Для правильного отображения кириллицы в GTK-окошках в php.ini следует добавить ещё одну строку:

php-gtk.codepage = UTF-8

и будет счастье  :D