Руслан С.
27 сообщений
#13 лет назад
Добрый день коллеги!
Мне необходимо скомпилировать PHP, для того чтобы создалась библиотека php5ts_debug.lib. Которая впоследствии будет использоваться для написания расширений.

Проблема заключается в том, что во время компиляции у меня запрашивает два несуществующих файла: zend_config.h и вроде php_config.h.
Пробовал скомпилить две версии: 5.2.4, 5.2.11. Все под винду. Я на форуме ничего толкового не нашел.
Помогите пожалуйста кто ни будь советом как его скомпилировать.
Вадим Х.
256 сообщений
#13 лет назад
Что мешает дать компилятору, что он просит? Либо наоборот исключить их при сборке?
закомментируйте строку # include "zend_config.w32.h"

Первые же результаты в гугле дают ответ:
Руслан С.
27 сообщений
#13 лет назад
Пробовал, не помогает
терь я читал официальный мануал, так тут не находит файла libxml/parser.h
вот пример конфига:
--enable-soap SOAP support
--without-wddx WDDX support
--without-xml XML support
--disable-xmlreader XMLReader support
--with-xmlrpc XMLRPC-EPI support
--disable-xmlwriter XMLWriter support
--with-xsl xsl support

читал что можно отключать ненужное, но не получается.
Вадим Х.
256 сообщений
#13 лет назад
1285816

Цитата ("prishelec"):
Пробовал, не помогает
терь я читал официальный мануал, так тут не находит файла libxml/parser.h
вот пример конфига:
--enable-soap SOAP support
--without-wddx WDDX support
--without-xml XML support
--disable-xmlreader XMLReader support
--with-xmlrpc XMLRPC-EPI support
--disable-xmlwriter XMLWriter support
--with-xsl xsl support

читал что можно отключать ненужное, но не получается.


Ну раз нету libxml/parser.h - получите.
Только врятли это, что вам потребуется - нужен полный пакет бинарников libxml2
Вот сцылка: ftp://ftp.zlatkovic.com/libxml/libxml2-2.7.6.win32.zip

UPD: естественно прикрепить отдельно parser.h не могу.
Руслан С.
27 сообщений
#13 лет назад
Цитата ("MasterJedi"):
Цитата ("prishelec"):
Пробовал, не помогает
терь я читал официальный мануал, так тут не находит файла libxml/parser.h
вот пример конфига:
--enable-soap SOAP support
--without-wddx WDDX support
--without-xml XML support
--disable-xmlreader XMLReader support
--with-xmlrpc XMLRPC-EPI support
--disable-xmlwriter XMLWriter support
--with-xsl xsl support

читал что можно отключать ненужное, но не получается.


Ну раз нету libxml/parser.h - получите.
Только врятли это, что вам потребуется - нужен полный пакет бинарников libxml2
Вот сцылка: ftp://ftp.zlatkovic.com/libxml/libxml2-2.7.6.win32.zip

UPD: естественно прикрепить отдельно parser.h не могу.


Спасибо.
Вот кстати, что я нашел: . Может кому будет интересно
Я скачал libxml, теперь просит iconv.h (его я тоже скачал) не помогает.
Неужели это такая пролема скомпилить PHP или както можно поотрубать все ненужное. мне надо чтобы скомпилилась php5ts_debug.lib и все.
Вадим Х.
256 сообщений
#13 лет назад
Цитата ("prishelec"):
Цитата ("MasterJedi"):
Цитата ("prishelec"):
Пробовал, не помогает
терь я читал официальный мануал, так тут не находит файла libxml/parser.h
вот пример конфига:
--enable-soap SOAP support
--without-wddx WDDX support
--without-xml XML support
--disable-xmlreader XMLReader support
--with-xmlrpc XMLRPC-EPI support
--disable-xmlwriter XMLWriter support
--with-xsl xsl support

читал что можно отключать ненужное, но не получается.


Ну раз нету libxml/parser.h - получите.
Только врятли это, что вам потребуется - нужен полный пакет бинарников libxml2
Вот сцылка: ftp://ftp.zlatkovic.com/libxml/libxml2-2.7.6.win32.zip

UPD: естественно прикрепить отдельно parser.h не могу.


Спасибо.
Вот кстати, что я нашел: . Может кому будет интересно
Я скачал libxml, теперь просит iconv.h (его я тоже скачал) не помогает.
Неужели это такая пролема скомпилить PHP или както можно поотрубать все ненужное. мне надо чтобы скомпилилась php5ts_debug.lib и все.


Возможно стоит посмотреть тему Компиляция libxml2 с поддержкой iconv
Руслан С.
27 сообщений
#13 лет назад
Собираю например в MS C++ версия 6.0, а также пробовал в других, то просит zend_config.h.
А если собирать как написано в README.WIN32-BUILD-SYSTEM, то просит другие либы и тд.
Что за бред Яне пойму.
Вадим Х.
256 сообщений
#13 лет назад
Таким извращением, как компиляция под виндой PHP заниматься не приходилось - только под Unix = тоже немало проблем при компиляции, особенно с зависимостями, однако все решаемо их удовлетворением и прописыванием slink.

1. Попробуйте отключить
#include <iconv.h>

в файле encoding.h
(поиск по файлам рулит, разве не так :?: )

2. Почем бы изначально не попробовать отключить zend_config.h и остальное ненужное :?:
#include <zend_config.h?>
Руслан С.
27 сообщений
#13 лет назад
Отключал и что только не пробовал, тогда другие ошибки появляются.

вот например:

#ifdef ZEND_WIN32
# include "zend_config.w32.h" // Теоритически вот это должно подрубиться, но не подрубается.
# define ZEND_PATHS_SEPARATOR ';'
#elif defined(NETWARE)
# include <zend_config.h>
# define ZEND_PATHS_SEPARATOR ';'
#elif defined(__riscos__)
# include <zend_config.h>
# define ZEND_PATHS_SEPARATOR ';'
#else
# include <zend_config.h>
# define ZEND_PATHS_SEPARATOR ':'
#endif
Вадим Х.
256 сообщений
#13 лет назад
#ifdef - может условие не выполняться.
Руслан С.
27 сообщений
#13 лет назад
Я вот читал статейку воще бред: .
Я в том плане, что если так компилить, то с ума сойдешь.
Вот еще статья: .

Я конечно очень благодарен за помощь, но коллеги пишите лучше сюда, а не мне в личку. Я вижу желающие уже есть попробовать собрать это чудо.

Я уже и на форум: писал. Результат нулевой. Никто не подсказал.

2: MasterJedi
Я шокирован чего #ifdef - может не выполняться.
Надо походу пробить в чем дело.
Руслан С.
27 сообщений
#13 лет назад
Все я на завершающем этапе:
Единственное под самым завершением вот что:
Linking...
Creating library ..\Release_TS/php5ts.lib and object ..\Release_TS/php5ts.exp
LINK : warning LNK4049: locally defined symbol "_php_dom_create_object" imported
LINK : warning LNK4049: locally defined symbol "__libiconv_version" imported
LINK : warning LNK4049: locally defined symbol "_libiconv_close" imported
LINK : warning LNK4049: locally defined symbol "_libiconv" imported
LINK : warning LNK4049: locally defined symbol "_libiconv_open" imported
pcre_compile.obj : error LNK2001: unresolved external symbol _php__pcre_is_newline
pcre_exec.obj : error LNK2001: unresolved external symbol _php__pcre_is_newline
pcre_exec.obj : error LNK2001: unresolved external symbol _php__pcre_was_newline
tokenizer.obj : error LNK2001: unresolved external symbol _tokenizer_register_constants
tokenizer.obj : error LNK2001: unresolved external symbol _get_token_type_name
libxml.obj : error LNK2001: unresolved external symbol _xmlDllMain
libxml2_a.lib(xpath.obj) : error LNK2001: unresolved external symbol __ftol2
libxml2_a.lib(xmlschemastypes.obj) : error LNK2001: unresolved external symbol __ftol2
libxml2_a.lib(xpointer.obj) : error LNK2001: unresolved external symbol __ftol2
..\Release_TS\php5ts.dll : fatal error LNK1120: 6 unresolved externals
Error executing link.exe.

php.exe - 10 error(s), 5 warning(s)