[PHP-users 7642] Re: php-4.2.1にXLIiconv関数が組み込めない( makeエラー)
Mitsuharu Toda
php-users@php.gr.jp
Wed, 22 May 2002 15:16:27 +0900
戸田です。
追加情報です。
ext/iconv/iconv.c ファイルを、php-4.1.2用のiconv.cファイルと
置き換えると、無事にコンパイル出来ました。
phpinfo.phpで確認してiconvの項を表示しています。
データベースの動作検証は確認中です。
過去のML履歴を参考に
http://cvs.php.net/cvs.php/php4/ext/iconv/iconv.c
から最新版をダウンロードしても同じエラーを表示して
コンパイル出来ませんでした。
現在、古いファイルからダウンロードして検証中です。
このまま、php-4.1.2用のiconv.cでは問題あるかなあ。。。
以上。途中経過でした。
Mitsuharu Toda wrote:
>
> こんにちは、戸田と申します。
>
> 今回の質問は、
> HP-UX11.11 で、php-4.2.1 の --with-iconv=/usr/local オプションが
> コンパイル出来ません。
>
> 構成、
> OS: HP-UX11.11
> httpd: apache_1.3.24
> PostgreSQL: postgresql-7.2.1
> PHP: php-4.2.1
> GCC: gcc-3.0.4
> GD: gd-1.8.4
> Zlib: zlib-1.1.4
> Libpng: libpng-1.2.1
> JPEG: jpegsrc_v6b
> TIFF: tiff-v3.5.7
> FreeType: freetype-2.0.9
> Libiconv: libiconv-1.7
> Libmcrypt: libmcrypt-2.4.17
> PDFlib: pdflib-4.0.2
> PHPlib: phplib-7.2d
>
> 前回、PHP-users 7463で、大野様に教えて戴いた、libpq.so が
> 見つからない件は、configure ファイルの libpq.so のところを、
> libpq.$SHLIB_SUFFIX_NAME に変更して configure&make して、
> データベースが正常に動作しております。
>
> 本来なら、configure ファイル内で、
> SHLIB_SUFFIX_NAME=so
> case $host_alias in
> *hpux*)
> SHLIB_SUFFIX_NAME=sl
> ;;
> *darwin*)
> SHLIB_SUFFIX_NAME=dylib
> ;;
> esac
> HP-UX の場合、拡張子を、so から sl に変更しているが、
> libpq.so の個所は変更してない為でした。
>
> 今回は、XLIiconv関数(iconv)の組み込みの為、configure を以下の
> オプションで実行すると、
> #./configure --without-mysql --with-apache=../apache_1.3.24 \
> --enable-track-vars --with-pgsql=/usr/local/pgsql \
> --enable-i18n --enable-versioning --enable-mbregex \
> --enable-jstring --enable-mbstring --enable-mbstr-enc-trans \
> --with-gd=../../GD/gd-1.8.4 --enable-trans-sid --without-mysql \
> --with-iconv=/usr/local --with-pdflib=/usr/local \
> --disable-posix-threads --with-mcrypt --sbindir=/usr/local/bin \
> --with-zlib=/usr/local --with-jpeg-dir=/usr/local \
> --with-tiff-dir=/usr/local --enable-gd-native-ttf \
> --with-freetype-dir=/usr/local --with-png-dir=/usr/local \
> --enable-zend-multibyte --disable-xml
> configure は正常に終了しますが、
> make 実行で、以下のエラーメッセージを表示して異常終了します。
>
> aking all in iconv
> make[2]: Entering directory `/home/mtoda/DB/php-4.2.1/ext/iconv'
> make[3]: Entering directory `/home/mtoda/DB/php-4.2.1/ext/iconv'
> gcc -I. -I/home/mtoda/DB/php-4.2.1/ext/iconv
> -I/home/mtoda/DB/php-4.2.1/main -I/
> home/mtoda/DB/php-4.2.1 -I/home/mtoda/DB/apache_1.3.24/src/include
> -I/home/mtoda
> /DB/apache_1.3.24/src/os/unix -I/home/mtoda/DB/php-4.2.1/Zend
> -I/usr/local/inclu
> de -I/usr/local/include/freetype2/freetype -I/home/mtoda/GD/gd-1.8.4
> -I/usr/loca
> l/pgsql/include -I/home/mtoda/DB/php-4.2.1/ext/xml/expat
> -I/home/mtoda/DB/php-4
> .2.1/TSRM -g -O2 -c iconv.c && touch iconv.lo
> iconv.c:142: conflicting types for `php_iconv_string'
> iconv.c:90: previous declaration of `php_iconv_string'
> iconv.c: In function `php_iconv_string':
> iconv.c:178: warning: passing arg 3 of `libiconv' from incompatible
> pointer type
> iconv.c:178: warning: passing arg 5 of `libiconv' from incompatible
> pointer type
> iconv.c: In function `php_if_iconv':
> iconv.c:294: warning: passing arg 4 of `php_iconv_string' from
> incompatible poin
> ter type
> iconv.c: In function `zif_ob_iconv_handler':
> iconv.c:323: warning: passing arg 4 of `php_iconv_string' from
> incompatible poin
> ter type
> make[3]: *** [iconv.lo] Error 1
> make[3]: Leaving directory `/home/mtoda/DB/php-4.2.1/ext/iconv'
> make[2]: *** [all-recursive] Error 1
> make[2]: Leaving directory `/home/mtoda/DB/php-4.2.1/ext/iconv'
> make[1]: *** [all-recursive] Error 1
> make[1]: Leaving directory `/home/mtoda/DB/php-4.2.1/ext'
> make: *** [all-recursive] Error 1
>
> liviconvライブラリは、/usr/local/にインストールしてあります。
>
> configure オプションで、--with-iconv=/usr/local を除けは問題なく、
> configure&make 出来ます。
> php-4.1.2+postgresql-7.2.1 では問題なくconfigure&make 出来ています。
>
> 以上。よろしくお願いいたします。
>
> --
> _______________________________________________
> PHP-users mailing list
> PHP-users@php.gr.jp
> http://ns1.php.gr.jp/mailman/listinfo/php-users
--