[문제점]
php 5.2.17 configure 진행 후 make 진행시에 오류가 발생했음
/usr/local/src/php-5.2.17/ext/dom/node.c:1953:21: error: dereferencing pointer to incomplete type
ret = buf->buffer->use;
^
In file included from /usr/local/src/php-5.2.17/main/php.h:38:0,
from /usr/local/src/php-5.2.17/ext/dom/node.c:26:
/usr/local/src/php-5.2.17/ext/dom/node.c:1955:40: error: dereferencing pointer to incomplete type
RETVAL_STRINGL((char *) buf->buffer->content, ret, 1);
^
/usr/local/src/php-5.2.17/Zend/zend_API.h:472:14: note: in definition of macro ‘ZVAL_STRINGL’
char *__s=(s); int __l=l; \
^
/usr/local/src/php-5.2.17/ext/dom/node.c:1955:5: note: in expansion of macro ‘RETVAL_STRINGL’
RETVAL_STRINGL((char *) buf->buffer->content, ret, 1);
make: *** [ext/dom/node.lo] 오류 1
참고 블로그 : https://github.com/phpbrew/phpbrew/issues/492
Patch File Download : https://code.google.com/p/php52-backports/issues/detail?id=16
[해결 방법]
패치 파일 다운로드 후 php 소스 파일과 같은 경로로 이동. 적용
# patch -p0 < ./libxml29_compat.patch
(Stripping trailing CRs from patch; use --binary to disable.)
patching file ext/dom/node.c
Hunk #1 succeeded at 1950 (offset 55 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file ext/dom/documenttype.c
Hunk #1 succeeded at 215 (offset 10 lines).
(Stripping trailing CRs from patch; use --binary to disable.)
patching file ext/simplexml/simplexml.c
Hunk #1 succeeded at 1343 (offset -74 lines).